qdqdqdqdqcqdqdqdqdqdqqdqqdqqdqqdqqdqqdqqeqrqeqrqeqrqeqrrqrrrrrrrrrrrrrrrrqrqeqrqeqqdqqdqcqcqcqcqcqcqcqcqccpccpccqcqcqcqcqdqdqdqeqeqeqeqeqereqerereqereqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqdqdqdqdqdqdqcqccqccqccqccqccqccqccqccqccqqcdqqcdqqcdqqcdqqcdqqcdqcccccccccccccqqcqcqqqqcdqcdqccqcdqddqdqqqddqqqdqedqqdeqeqedqeqqddqqdqddqcdqcdqcqcqcqcpccpqpppccpcpccccpqcccqcqcqcqcqdqdqeqeqdqeqeqdqeqdqeqeqdqdqdqdqdqdqdqdqdqdqdqdqdqdqdqcqcqcqqcccccccqccpcpcpcpcppcccpcqpccqqccqqccqqccqqccqqccqccqdpcqcqcqcqccqcqcqcpccpcqqcqqcqqcqqcqqcqdqddqqqqdqdqqeqeqqeqeqrqerqeqqeqeqdqqdqqcqqcqcpcpcqccqcpcqcppccppppcpccpccqpppqdqcqdqdqeqeqeqqdreqqeqqdqdqdqdqdqdqdqdqdqdqdqdqdqdqcqcqqcccqccqqcqcqpccpccpccpccpccppcpqpqccqqccqqccqqccqqccqqqcccqqqccqccqqccqqccqdqdqqdqccqccqccqccqcqdqdqqqdqqdqeqqeqerqfqerqeerqeqreqeqqeqdcqcdqqccqccqpcpccppccppccpppccpccpcccqcqcqccqqdqdqqeeeqeqqeqeqeqdqqdqdqdqdqdqqdqdqqdqdqdqdqddqcqcqqcqcqqcqqcccqpcccppccppccccpcqpqcccccqpqcccccqpqcqcccqcdqccqqccqccpcqcqcqcqcqpcqqcqqcqcqcqcqdqcqddeqedqeqdeqqqdreqrerqqeqerdqrqddqdqqdqqcqcpqcqcpcqccpccpccppccpppccpqccqcqcqqcqqdqdqqeqeqqeqeeqeqeqqeqeqdqqcqqdqdqdqqdqdqdqqdqdqqcqcqcqqqcccpqcpppcpppcccccpcpqccqqqcpcccqqpcpcccqqcccpcccccqccqpccpcdqcqcqcqcqcqdqqcccqcqcqcqdqcqdqqqdqqdqdqqrdqeqeqqreqeqqeqqqdqqqccqcqcccpcppcpccpccpcqccppccppcpccpcqcqcqqcqqcqdqqdqdqqeeqeqeeqeqdqdqdqdqdqdqcqqdqdqdqdqdqdqdqqqcdqcpcqcqqpccqccccpppqcqpcpcccccqppccqccqcccqqccqcccqpcpcqcccqccqcqcqcdcppqcqcqcqqdpcqcqqcqcqcqcqcqdqqqdqdqeqdqqdqeqrqerqrqeqreqeqqeqdcqcqqcqcqqqcccppccqccqppccpccpcpqpcqccqqcqcqdqdqddqeqeqeqqeqqqqeqeqqdqdqdqdqdqdqcqdqdqqdqdqdqdpqqdcqccqqcqcqccpcqqcqpppppcpcppcqpcccqcpcpqccqcccpccqqqcccqqccpqqqcqccqcqdqdqdqdcqcqcqqqccqcqdqdqdqdqdqdqqeqeqeqqdeqeqderqeqeqqqdqqcqqqcpccccqpcqccpccpcpccpccppcccpcqcqpcqcqcqcqcqdqdqeqdqeqdrqeqrqeqqeqeqdqqdqdqcqdqdqcqdqqdqdqdqdqdqccqdcqcqqccccpqpccpcpqcqpppqccqcpcppccqccpcqccqqcccccpccqqcqqcqcqcqcqcqdqdqcqdqcqcqcqcqqqcqcqcqdqdqdqddqeqeqeeqqeqeqqeeqeqdqqdqdqdqqqccqpcpccqcpccpccccpccpccpccpccqpcqcqqcqcqqdqdqdqdqeqdrdqeqeeqreqrdqeqqdqdqqdqdqqcqqcdqqdqdqdqcdqcqcqqcqcqcpqcppcpccpppcqpppcpqcccccccpcccpqcccqccqqcpccccqqccccqccccqccqcqdqdqdqqcqccqcqcqqpqcqcqcqdqdqeqqdqeqqqqeqeqreqqqeqqedqqcqcqcqccpcccqcpppcpppcppccppcppcpcdqccqqcdqdqqcqdqdqdqeqeqdqereqrdqedqeeqdqeqdqdqdqdqcqdqdqdqdqqdqdqqdqdqdcqcqcccccqppqppcccpqqpcqcqpppccpcpcpcccccpcccqcqcccqccqccqcpccpcqqqdqdqdqdqddqqpqcqcqcdpcqcqdqcqdqdqqeqdqqedeqeqdqeqeeqddqqddqcqcqcqqcqqpcccpcpcccqcqcqpccpcccqcqqqccqcqqqcqdqdqdqeqdqeqeqeqedreqqqqeqeqqedqdqdqdqdqdqdqdqqdqdqdqdqcdqqccqcqqpcppcpqcpcqpcppccppqqpcccpcpccqcpccccqqcqcqccqqccccqqcqqqdqdqdqqcqqcqdcqcccqcqdcqccqcqcqdqqqeqqqqqdqeqdqdqqdqqqdcqqcqcqcppccccppqpcpccqpccpccppcpcccpcccqqcqqcqdqqdqdqdqqdqdrdreqeqeqqdrqrqeqqqdqdqdqdqcqqcqdqdqdqdqcqqddqcqccqccqpqpccccpcppccccpccpcccqpccccpcqpcpcqcccqccccccpccqqqcqccqccqqqdqeqqddqdcqccpcqcqqcqccqqcqcqcqddqqdqqqqqdqdqeqdqqdddqqccqcqcpcqcpcpcccqcpppccccpcpccpppqccqcqccqcqdqddqdqdqeeqeqeqeqeqeqeeqeqrqeqqeeqdqqdqdqdqdqqdqdqdqqdqdqqqqdqcqqcpqpcpcccpqqcpcccppcpppcpcpccppcccpccccccpqcqcccqpqpccqcqpqcqqqqdqcqcqccqqcqccqqcccqcqcqcqqdqdqqeqqqdqqdqdqqqqdqcqcqccppcqpcpcpppcqpcpccccpccpcqqcqcqcqdqqddqdqqeqeqdqqeqeqeqeqeqeqreqeqreqeqeqdeqdqdqqdqdqdqdqdqdqdqdqdqqcqcqcdcqccccpcqppccpccpppccpccccpqcccpccccpccpccppdqccqccqpqcqccqcqcdpdqddqddqcqccqcqcpccqcqccpcqcqcqcqcqdqeqdqqqdqqdqdqqddcqdqcqcqqcppcppcccqcpcccpcpccpcpccpcccppcccqqcdqqdqedqdqqeqdqeqeqereqerreqeqedqereqeqqqeqdqdqdqdqdqdqqdqdqqcqqdqqcqccqcqcccqpccppccpqpcccpcqpccpcpcppcpccpcpcqpcccpcpcppccccqcqccqqdqdqqdqqcqdppqccppccqccpccqcqdqcqdqdqdqqdqdqqdqdqqqqcqcqccpqcpcqcpccppqpcpccccpccccppcpcqccqqcpcqdqddqdqqeqqeqeqeqeqdqreqdeqereqeqqedrqeqdqeqqeqeqdqdqdqdqdqdqdqcqqcqccqcqcccpccqpccppqcpcccpccccqpcccpcccccccpcpcccccccqccqpqcqcqccqqccqdqcdqccdcqcqcqcqcqcqcpcqccqpqcqcqdqdqdqddqcqcdqcqcqccdqcqqqpcqcppcpcccpcpppcpccpcpccpppcqcccqqdqdqqdqeeqdqqeqeqqeqeqeeqeqqeqeqeqeqeqeqeqeeqeqeqeqeqeqeqdqdqdqdqqcddpcddqccccpcppccppccqpppcpcpcccpcpcpcppcpccpcqccccpccpcccpppcqqcccqdqcqqcqdqqccqcccpppqpcpccqqcqcqcqcqdqcqcqdqqcqqdqcqqcqcqccqcqccqcpcccppccccpqcccpccppccpcpppqccqcqcqqeqqqdqeqeqeeqeqeqrdqrerqeqeqereqqeqeqeeqqeqeqeqeqeqeqdqdqdqdqqddqcqqqcccpppccpppccpqppccpcccpcccpcpcpcpcpcpccpcpccccqcqcccqcqqqcqcqccqcqcccpccpccpcqcpcqccqcpccpcqcqcqcqdqdqcqdcqdcqcqqcqqcqqccqcpccqcqpcpcpccppcppccpccpcccccqcccqcqqdqqdqdeqeqeqeqqeqeqeeqedqeeqereqdqeqeqeedqqeqeqeqeqeqeqdqqdqqdqcqcqdcqcpcqpcpccpqcpccppqqpcpcpppcpcpcppcpccccppcpccqccccqcqcqcccqcqcqqccqpccpccpccccqpcppccpccqcqcqcqcqcqcqcqqcqqdqqdpcqcccppccpccpccpcppcqcpccqccpccpccpcqpqcqcqcqqdqddqeqqeqeqerqeqeqqerqdrqeqdqerqeqedqqedeeqrdreqdqeqdqdqcqcqddqqddcqccpcqccqcccpccpccpppcpccqpccqpcpcpcccpcpcpcpcppccqqcpqcqcqcqqqcqcqcpcqcccqccpccpcpccpccqcqcpcqpcqcqcqcqcqcqcqccqccqcqdqcqpqcqqcqqcpccpcqccqcccpqccpccpccpccpcqcpcqqccqdqqeqeeqeqeqeqereqeeqeqeqqeqeqdqeedqdeddqdqqdqdqerdqeqeqdqdqqqcqcqqccqpccpcpccppcpcqpccccppccpccpcpcppcpccccpccpccccccdqcqdqccqcccqcqcdqcccpcppccpccppccpccppccccpqcqcqcqcqcqcqcqqcqcqcqcqcdcqqcccqpccqpccppccqcpccpccpccpcqpcpcdqcqdqqdqdqqeqqeqereqreqeqrqeqeqeqreqeqeqqqdeqdqcqdqdqqeqeqeqdqdqqdqqqcdqcqcqccqpccqpcqccppppcpqccpcpcppcccccppccpcpcppcpcpcqqqqccqcqqqcqqpqqcqccpccppccpccqpccpccpcqcpcpcqcqcqcqcqcqqcqcqcqcqcqqcqcqcpcqcpcpcqcpcccppccpccpccppcqccqcqcqddqeqeeqqeqeqeqeeqeqedeqeqeqedqeqeqedqdcdcqccddeqeqeqeqeqdqdqdqcqdcdqqqqccppccppccpqcqpcccppcccppccccppcpccccccpcccccpcccqcqcccqccqcqcqpqqqccqccpccppccppccpccpccpccqccqcqcqcqcqcqqcqcqcqccqcqqcqcpqcqcqcppcccpcpccpccpccpcpccpqcqqcqdqqqdqqqqererqeqerqrqerqqeqeqeqqeqqdqeqqcqccccccccqdqeqeqdqeqdqdqqdcqqcqccqcqcppccppccppcccpcccppcccpqcccpcpcccccccccccppccppcpcqcccqcqcqqcqpcqcdqccqcpccpccpccpccppccppccpccpccpcqcpcqcpcqcqcqcqcqcqqcqcqcqqcqcqqppcpcpcccpccpccpccccpqcpccqcqdqdqqqeqqeqeqrrdeerrdreqeqeqedqeqeqdqcdccccccccqceqeqeqeqdqdqdqdqdddqpccqqpcqccpccppccpccpcpcqccpccppcccccccppccppcccccpqcccdqqccqcqqccqdqcqcqcqccpccpccpccppccppccpccpccpccpcqcqcqcqcpcqcqcqcqqcdqcqcqcqcqcpcqcpcqpcpqccpccpccppcpppcqcqcqqqdqeqqrqeqreqeeqrqqeqrdqeqeqeqdqdqdqeqqdcccccccccccqcqdqqeqdqdqqdqdqqqcdqccqcppqccqccqpccpccpppccpqcpcpcpccpccpccppcccccpcpcccccqcccqcqqcqcqcqcqqcqcqccqpccqpccppcccpccppqccpccpcqcqcqcpcqcqdqcqqcqcqcqqcccqcqqcqcqpcpcpcpcpcpcqccqcqcqqddqeqqeqeqreqrrqeqererdrrqeqeqdqdqdqqddcqccccbccccccddqeeqeqeqdqdqqdcqccqdcqcccccqccqccqcqccpccpqcqpccppccccccccppcppcccccccpccccccqcpccqqccqqcqcqcqcqcqpccpccqpccqppcccpccpcpcccpccpccpcpcqcqcqcqcqcqqcqcqcqqcqqcccqcpcpcppcqcqpccpqcqcqcpcqqqqqqqedqeqqqqerrerqdrqdeqeqdqdqdqdqdqcqccccb[bbccqcqqdqqdqdqqdqdqdqdqdqccqqcqcqccqccqpccpccpccpccpccppcccpcccccpcccpcccccppcpcccpcpqqpcccqqcpcqcqcqqcqcqccpcpccpccppcqpcppccccpcpcqpcqppcqcpcqcqcqcqcpcqcqcqccqccqqcpccqpcqcqpcpcqcqpcpcpdqccpqqqcqdqdqerqeqeqrdqreqeqqeqdqddqdqdqqcccccbbZcccccddqddqdqcqcdcqqqqcqdqcqccqqccqccqccppccpccpccqccqpccpccpcccpccccccccccccpccccdqcppqcccqdqcqqcqcqqcpccccpccppccccppppcpccpcqqccpqcqcqcqcqcqcqdqdqcqcqqccqcccqpcpqcqcpcpcqcqcpcqcccqcqcpqdqcqccqdqdqeqdrqeqeqreqreqeqdqdqdqdqqdqcdcccc[bb[cccqcqdqdqdcdcqcdcqcqcqcdcqqqccqcqccpccpccppccpccpccpccppcppcpcccpcppcppccpcpcpcqpqccqcqcqcqcpcqcqcpccccpcppcpccpcpppcpcpccpcccpcqpccpcpcqcqcqdqcqcqdqcqdpcqcqcqqcqdqqccqcqcqpcqccpcqpcqcqcqccpccqcccdcqdqderrqeqeqdqrqeqdqdqdqdqdqqcqcccbccbccccqqdqqcqcqcqqqqcqcqcqccqccccqccqccqcpccpcpcpcpccpppppccccpcccccccppcccpqqcqdpccqcqcqcqcqqcqqqcqpqpccpcpccppccccccpccppccpccpcqcqcqcqcqdqdqcqcqcqdqcqccqqcpcqcqpqcpcqcqccpccqqpccccqccqccccqccqqqdqerqrqeqddqdqdqqddqcqcqccccccccccccqccqdcqccccccccccpcqcqcqqccpccpcpccpccppccpqppccppppcppcpcccppccpcccccppqcqpqccqcccqqcqcccqcpccccqcppcccppcpcqpcpcpccpcccpqpqcpcpcqcqcqcqdqcqcqcqcqcqcqqcqcqcqcpccqqccqcpcqqcqcpcqcqcpcpccccccccccdcqdqreqeqqrdqqeqdqpdqcdqqcdqccccccccqcdcqcdqccccccccqcqqcdcpccqpccqqccqccqccpcpcpcqccpcpcpccccppcccpcppccpcpccpcqcccqcpcqccqqcqqcqcqqccqpcpccccppcpqpcpccppcpccppccpqpcqcqqcpqqdqqcqqdqcqcqcqcqqcqcqccqcqqccpqcqcqqcqccqpcccccccccccccccqcdqqqrqeqeqqqdqdqdqddqddqcdccqcqcdcqcdqdqqcccccccccccpccqcqqcdqccpppccpccpccpccqpccpcppppcppccpcpcppcpcccccpcccqcqqdccqqccqccqqcccqcqqccpcpppppccppccppccpcccpccqcpcpccqqqcqdqdcqcqcqcqcqcqcqcqcqqcqccqqdcqcqcqcqccqcqqcpcpccccbbbbccccqdqeeqerqqdeqeqqdqddqcqcdqdqcdcqcqqcddcqdcqccccbbccccccpqcccqccqqcpccqccpccpccpcpccppcppcpppccpppccppppcpcpqpcpqcqqcqqcccqccqcqccqqccccqpcccccqpccqpccppcqccpccqpqcqpcqcqcqppcqcqcqqcqdqcqcqcqcqcqccqccqcpccqcqcqcqcqcqccqcpcccccccbbb[bcccccqdqqeqqdeqqdqdqdqdcqddddqdcqqdqcqqcqdqqdcqccccb[bbccccpqccqqccqcqccccpccpccpccpccccpccpccpppccppppccppcpccccccqqqcqcqccqcqcqccqcqcccqcqccpqcpcpppccppccpcccpcpcpccpccpcpcpccpcqcqcqcdqcqcqcqcqcqcqcqqcqqcqdqqcqcqcqcqcqcqccqccpccccbbZbbZccccqcqdqqeqqqdqqdqdqqdcqcqcdcqpccdcdqcddqcqcccccbbZcbccccpcqcccqccccqcpccpcccppccpcpppppcpcpccpccpcppcpccppcccpcpcpqcpccqpccqcqcqccqccccqcccqpccqpqpcccppccpccpcpcccqcpqcqpcqcqcqcqcqcccqqcqcqcqcdqdqcqcqccqqdqccqcqdqcqcqcdqcpccpcccpcccccZbccccccqdqdqqqeqqdqdqcqdqqcqcqccdqcqcccqccdqdcqccccc[bbcccccccccqqqcqcpqcpccpcpcqpccppcccpcpppccpppccccppccpccccccqccqpdcdcqcqcqqqcqcqqcqqccppccqppccpccqpcccqqccqpcqccpqcqcqcqcpcccpccpcqcqcqcqqcqdqdqdqdqqcqcqqdqcqcqcqqqcqcqcccpcccccccccccccqccqdqeqqqdqqdqdqdqcccqcdcdcdqccdccqcqdpqcccqcccbb[ccccccqcqccqccqccpccccqpcccqcpccqpcpppcppccppccppccpccppcpcqccqccpqcqqcqcccqqqcqccccccpqccppccqpccpppcpccpcpccccqqdqcqcqcppcccpcpqpqcdqcqcqdqqdqqdqdqdqqdqdqqcqqqcccpcqcqcpcccccccccqccqdqqeqeeqqdqdqcqqdqcccqcqccccqccccqccqccdpcccccccccccpccccqccpccqccqpcpcqppppcpcpcpcpcppcppccpccpcpccppcppccqcdpqcqccqqqqqcqccqcqcqcdppccqcpccpccppcqppcccqcpqcqpqcqcpcqcqpccppppcqqcqdqqdqdqddqdqdqdqcqdqcqcqccqcqqcqccppccpccccccdccqcqdqqdqqdeqdqqcqcccqcqcccdqcccqcccccpccqcdqcccccccccpccpcqpccqccpcccppcpccqcqcccpppppcccppcccppcccppcccqcqccqcqcqcdqcqqcqcqccqccqcqpcdqpccccpccppccqcqcpppccqqcqqqqcqdqcccppccccccppqdqqdqqdqeqqdqdqcqdqdqdqdqdqcqccqccpdqcqcqcqcqdqdqqcqdqcdqqdqqdqdqqdcqcqccqqcqcccqccccccccqcqccqqccccccqccdqcqpccpccpccqccccpccppppcpcpcpcpcpccppcpppcpppcpqpcqccqcqqcqccqqdpqqcqqcccpqccpccpcppccpccpcccccqcccpcqcqcdpdcqcqcqcppbpbcccpcqcqdeqdeqdqqeqdqdqqdqqdqcqdqcqqcqqcqcqcqcqcqcqcqcqdqcqqqdqeqeqeqqdqcccqccpqcccccccccccccccpccqqccpcccpccccqccccppccpccqppcpqpccqccpppppppccpppcpcppcpcccpcqcqqqqdqccqcccqcqqcccqqpccqccpcppccppcqppcppcpccpcqcqdqqcqcqcpcccbpcccpqcqdqqdqqeqqqdqdqdqdqdqcqqcqcqcccqcqcqcqcqdqeqqdqcqcqqcdqdqqdqqdqcqcqcqccqcdppcqcccccccccccccccqqcpccccqcqpcppccppcpqcpcqccpccpccpcpcpcpcpcpcppppppppcpcccqcqqqcqqcqcqcqccqcqccqcccppcccpccpcpccpcccpcpcpcccqccccqcqqdqccccccccpbppccqcqcqdqdqdqdeqdqdqqdqdqdqdqdqqcqqqcqcqcqqdqqdqdqqeqdqdqcqqcqdqdqdqdqcdcqqcccqqccccccbcccccccqcqcqcqqqcqccccqqqcqcqcqpccpqpcpcccppccpppppppcpcpppcpcqpcqcppqcqccqccqcqcqccqcqccqcqcqqpccpqccccpccpcppqqpqccpcpccccqqcqqcqcpccbcpqqdqcqdqdqqdqdqdqcqdqddqdqdqcqcqqcqcqqqcqqdqqeqrdqeqqqdqcqqdqdqdqdqcqqccqpccqccpcccccccbcccpcccqqcqcqqqccccqqcccppcppccpcccpcpcqcpcpcpcpcpccpppppcpppcppqcpdqcqcqqqqqqcqqccqcqcqcccpcpccccpcpccqqcqccpcqcccqqppccqqcqqppcppccccpqcdcqqcqcqqqdqqqqdqdqdqcqcqcqqqdqdqqqeqrqqqdcqcqcqcqqdqdqdqcccqcqccqpccccpcbccbpccpcpqcccccqqpcpccppcppcccqcpccpcpccqpcccqppccccpcpcppcpppcpppcpcqcccqqcdqqqqcqccccqqqqcqccpccpcpcqccpcpcpccqccpccpcccccccppccppqcccccccqcqqccqpqccpqpcqcqqqqdqdqdqdqqcqdqqqqdqqqqeqqdeqdqqqqdqcqqcqdqcqdcqqccccpqccpcpcccccccccpcccccpccpcppqcccpqpqcpcpccccpqccpqccpppcpcpcppcccccppppcqpccqcccccqqcqccqdcqccqpdqcqqcqcqcccpccqccqqqccqppcqcqqcccppcccpqccqcqccpcccqcpccqcqcqdpqccqcpqcqpdcqdqdqdqdqddqdqcqqqqeqerqeqrqdqeqqqcqcdqdqdqdqcccqcpccqccpcccpcccccpccpcccpqqcqpccppcqqcccccpcpccqccpcpcpcccpcpppcpcppccpcpcpcccpccppqcpcccccqccqccqpcdqcqcqqppccpccpccqcqcpccpcqcqpcqcpcccpbccccpqqcqqcqqqdcccccqccccccccpqcqdqdqdqddqdqdqqdqqqdqqqqdqdqrdqqqeqqqcqcqqqcqcqcqcqqccccqccpqcppppccpcpcpcpcccccpccppqccccppcpcccccpccpccccccpcppcpcpcpccpcpccccccpcppcqcccppqcqccqcqccqccqccccqcqcqcccqpcccqcccccdpqcccpqcqpcpcbbbbccccqcpqdcqdqcqdqdqdqcqpcppccccqcccqdqcqdqqdqdqddqdddqqqddqeqeqeqedqqcqcqcqccqdqcqcqcccqcqqccqppccccpccpccpccpcpcccpccccccccpccpccccpcpcccqpcpcpcpccpppccpcppppcppcpcccqpccpccpcqccqcqpccqccqqcqqcccpqcpqcqcpccpcqqcqcpcqqcqcqqcccbbbbppccdcqdqqqeqqdqdcccccpcpcpqdpqqddqqdqdqqdqqqdqqdqqqqeqqqeqqqqdqcqcqqcqcqcqqcqcqqccppcccccpcpcpcpccccccpcccccpccccpcpcpcpcpcpcccccppqpccccpcpcpccpccpcppcpcppcpcpccpccpccpccqccddqccqccqccccqcppcppcccccqccqcqcqqccqcqcqcccccbbbbbbcccqcqdqdqeqeqqdddcqccccccpccccqccqcqcqdqdqdqdqdqdqqqddqdedqqeeqqdqdqqqcqqdqcqcqcqcpcqpqccpqpcpcpcccppcpccpcccppcpcccccccppqppcpcppcqcqccpcppppcpcpppcppqcqcccccpccpccqcqcppcqccpccpccqcqqccpqcpcpcpqccqcqqcdqcppddqcccqcccccbbbccpqqdddqeqqdqeqdqcdqcccpccccpcpccqcqqcqdqeqeqdqqqqqqeqqqqqqqqeqdqcqcqcqcqqcqcdcqcppcpqcpccccccpcppcpcpcpcpcppccppcpcccqcpqppqqppccpcpcpcpcppcpcpccpcccccppcpccpccpccccqppcqqcccqcccqpccpqqpcccqccccdpqcqdqcqcqqccpcccbbbbpcccqqdqdddqqdddqqcccpccppcpcccqcccqdqdqdqdqeqeeeqqedqdqeqqqqqdqqqdqdqcqcqcccqcqqqpppccccpcpcppqpcpcpcccpcccccpccccccpcccpppqpcppcqccpqqpcccpppccppcpcpcpccpccppcpccqcqcqqqcccppcpqccppcpcpcccpccqcqqdqcqcqdqddqcqccbcbccqcqqcqdccqqcdcqqdccqccpccpqcqccqqcqdddqdqdqdqqqqdeqqdqdqeqdqdqdqcqcqqqcqcqqqccqqcpcpccqpcpccccpqccqpcpcppcpccpcccpccpcccpcccpqcpqpccccpccpcpcppppcpccpcqcppccpccpccppcqccpccccccqccpccqqcqccppcccqqpccqcqcdcqcqqcqcqqpccqccccccppcccqdqccqcqcqccqcqcqqccccpcqcqpcqcdcqqqqqdqdqddqqqdeqeqdqqqdqqqcqqqdcqqcqcccqqcqcqqqccpccccpcpcccccppcpcppcpcppccpcpcpccpccpccppccpcppqpppccpcccpccpppccpcqccpccqcccpccqpcpcccpccpccpccpccqppccpqcqqqqcdqcqdqqqcqccccccccccqdqqqdcqccccqccdqdqpdqcccccqqpqqccdqqdqeqeqqeqeqqqdqdqddqqqdqdcqqqqqcqqcccqccqcqccpccpcpcccpcpcccccpcpcccpcpccpcccpcpccccccpcccppccpcqpcqcqccpccpcppccpcpcpccccpccpccpcqpcccqcqcqpcccppcppccpcccpcqpcpdpqdqdqcqdqcqcqqqcpcpccpccqqqdqcqcqcccccpqdqddcqqpcqcqccqcqdcqcqdqdqdqdqqdqqdqqdqqdqqqqcqcqqqqqdcqdcqcpccppccpccpqpcpcccppccpcccpccpcppcccpccppcppcpcccpccqpccccqppccpccpcccpccpccccccpcpccpccppcqcpcpcccppcccppccccqpcccpcccqqccqcqcqcqdqdqdqdqdqccccccccpqdqdqqcpccpdqdcqqqcdqdccccqccccqqqddqqdqdqdeqeqeqqeqdqqcqqcqqqcqpqcqqqcqcqccqcppcqppccqccpcppcccpccpcpcpccccpcccccppcccpcpppccpcpcpcpccpccppcpccppcpcqppccpccpcqcpqqpcqccccpcccccpcppccpccpcpcqccqcqqdqqdqdqqdqdqcqcpcqcdqdddedqqccpcccpdqdqqqdqdqqcqcqpcqccqcqcqdqqdqeqqdqdqdeqdqddqdqcqqqcpqqcdcqcqcqccqpcccpcqpcccpccccccccccpcccpccpccpppcccpcpqcpcpqpcqccpppqpccpccpcccpcqcqccpcpccpqccccppcpcpqcqcpcpcpcccccppccpccpcpccqccqcqcqdqdqdqdqdqqqqccqcqdqddccccccqccqqdqdddcqqccqccqpdcqqqdqdqdqdqeqqeqqdqdqqdqcqqppqdqqcqqcqccqpcqcqcpcccpccpcccpcpcppcpccccccpcccpcccccpccccccpcccpqppccqcqcqcqcpccpccpcppppccpccpccpcpcpccqpqcppcccpcccpcpcppccppcccqcqcqqcqdqdqdqeqqdqdqcqcqqqcccqqdcqcqcpcpppcqdcqdqqqdqcpqcccqqcqcccqcqdqeqdqdqqqdqdqdqqdqcqqccqqdqccqcqcqdqcqqccpppcqpcccpcccccpcccppccpccccpppccpcppcpcpcpcqqccppcccpqccqccqqcqcqcqcpcqcpccqpppccppcccqcpcpccpcpccccccqpppcppqccdcqdqdqdqdqeqqddqqdqqcqqcqcccccccqcdqqdqqqqqcccppccqcqqddqdqdqeqeqqqeqdqdqcqqpqqqcqcqqcqcqccqccccpqcpcppcccpcccpccpccccpcccpccpccpcccccpccpcpcccpqpccpcqccqppccpccpcqcpccpccqpccccpcpcqcpccppcccpccpcpppcpcpccppcqqcqcqcqcqqqcqqdqeqeqeqedqdddqqqcqccppcpccpccqdqdqeddqcqcqqcpqqcpqcqcqqdqdqeqdqdeeqdqqdqqddqqcqcqcqdqcqcdqqqqcqcqcccccppcpcpcpccccpccppppccpccccpccccpcpcpcpqcqccpqpcccpcqccqccqppccpccpccpcppqpqccppcpcpccppccpccccpqccccpppccqccqqcqdqdqeqqdqqdqdqddqqqcqcqccpcccqddqqeqqddqqqpqpccpqqqdqeqqdqeqqqdqeqdqdqqcqqcqdqqcqcqcqqqqccqppcpccqppccpcpcppcpcpcbcppbccpccppppcccccpqpccpcqcpqccqcqccpcqcqccpccpccpccpcqpcpppqccccpcpccppcccpcpcpccpcpqcqccqqqcqdqdqqeqeqeqeqeeqeqqcqpcppccccqdddqdqeqeqdcqcqcqpppcpqcqdqdqdqddqdqqedqdqdqdqqdqqcqqqccqcqcqcqccqccpcqcppccqpcccccpccccccpccbppbcbpccccpcpqpppcppqdcqccqccccqccqcqcqccpcpcpcpcpccpcccpqppcppccppccpqcccpcccpqpppppcqcqcdpcqdqdqdqeqqeqeeqqdqddppccpccqqcdqqdeeqddqqcqccccccpccccccccqqdqdqqeqqqqeqdqdqqdqqcqqccqqcqcqcqcqcqcqccpcpcqccppcccpcpccccpccpccccccbppcccpccpccccccpcccccqccqccqqcqqccqcqqccpccqccqpccpcccpcppcqccpcppccqpppcppcppcppqcqcqccpccqqdqdqdqdqdqdqeqeqqeqeedqcqcccccpcqdqedeqqqqqdccccpppcpppdqdcqdqdqdqqdeqqdqeqqqdqdqdqdqqqcdqcqqcqcqccqcqqcccpccppcpcccpcppbbpbppccbbbbppccpccppcpcpcpccqccqcqqcqccqqccqqcqcqcpcpcpcqcpcpcpqqccccpcccpqcpqccppqqcpqccqpqpccqcccqcqqdqdqqeqqrerqeqccccpcccqccqeqqreeeqeedqcqcpcccccpcccqqpeqdeqdqqqqdqeqqqdqdqqqqqqcqqcqcpcqqqccpcppqccpccpppcpcccbcpccccbcbppcbcpcpccccccpcccqccqccqqccqcccqcccqcqcqccqccpcqqpcqcppcpcpcccppcpccppppccppccpppqcqcqcqqcqcqcqdqeqeqeqeqdqeedqdqcqccppcdqdqeeeqrqeqqqccccpcccccppcqqdqqqdqdqdedqdqqqeqdqqcqqpcqqcqcqqcpcqcqqccqcqpcccpcccpppcpcpcpcpccpccccccppbpccpppqqpcqqcqcqcqqcqdqqcqdqccqccqqcpcqccpcqcccccqppccpcppccpppccqppcpqpcqcqqccqqqcqqdqdqdeqeqereqqqdccpccqqddreqqereeqdccppcccccccqpcdqcdcqqdqdqqqeqdqqdqdqqdqdpqdqqqcqcqcqdqcqcccpqcqcpcppcppccpcccbpcbcbccpcpcpccccbbbcbppccqqqcqqqcqqdqcqdcqcqdpccqqqcqccpcqpcpcppccppcpppccqppcqpccpqqccqcpccccpcqcqdqqcqcqcqdqdqqqeqdqeeqqcqcpcpqddqeqereqeqrdqdqcccpbccccccqqccqdqdqdqdqddqdqeqqqqeqdqqdqcqcqqcqcqccqccqcpcqqcccpqcqpqccppcpcpppcpbpcccccpccbbbbbcbpcpqcqcccqdqcqcqcqpqcqcqcqqccpcqcpcqccppqpccppppcqpcqccccqpqccqpccccpcpqcdqcqcqqcqcqdqddqqqeqqeqeqddcccqcqqdeqeqrrrreqedqpcbpccpcqqccqcqqqqdqeqeqdqqedqdqqdqqcqcqcqcdqcqccqccqcqpcpcqccpcqcppccpppppccccpcpcpcpcbbbbbcccpqccqqcqqcdqqddqcqqdcqcqqpcqcqccqqcqccqcqpqccpqccpppccpcpqpccqqccpcqqcccqqqcqcqcqcqqqdqddqeqeqeqqdqdcqqdqdeqerreereqeqqqpbbbbcccqqddcqcqcqdqdqdqdqeqeeqqdqqdqcqcqqdqcqqcqcqqcqqcccppccpcpcccccpccppppbccbpccpppccppcbbbbbccpccqcqcqcqcdqqcqdqcqcqqcqcqccqcqcqqcqcqpccccppccqppcqpcppqcqdpccqqdqcqqqcqcqcqcqqccqcqccqdqqdrdrdrqqqqccqddqrererqerreqqccbbccccqqqqcqqqqdqdqdqdqdqqqqqqdqcqcqcqdqqccqqcccqcqcqcppccppcpccpppcbppcpcppccqpccbbbbbppcdpqqqddqqcqdqdqdqdqccqcqcqqcqcqqcqqdcpcqccqpppcppccqccppqpcccqqccpccqcqqcqcqqcqcqcqcqcqdqdqdqdqdqdqdqqqddqerqrrrfrreqeqccccbbbbcccccqccdqppdqcdqdqdqqdqdeqqdqqqcqqdqcqcqcqcqqqcqcqcpcqcpcqcqcccpqccpcppccpppccppccpcccpbbbbbbpqcqdqcqccqdddqqdqqcqcqqcqcqccqcqcqcqcqcqcccccppcppqpqccpqccpqqcccqqcdqccqcqcqqcqccqccqqqdqcqdqeqqeqrddqcdqqdqeqrfrerrrqreqdqcccbbbbcccpqqdqpqqqcdqdqqdqqddqddcqqpqcqcqcqcqpcqccqcqpqcqcpcpcqcppcccpccppccccpcppccccppbbccccpqcqqcqdqqqdqqdqdqdqdqqcqcqqcqccqcqppqcpcccpccppqcqpqpccppqccqccqccqccqccqccqcqccqpccqcqcqqdqdqeqeqqeqddqqdrdrerqererereqeqccpcccccccpqqqqcqcpdqqqdqdqddqqdqqqqqdcqcqcqcqcqcqcqqcqcpdpcqqcccpcccpcpcpccpcpccpcpccppccppcbbbbbbccqpqdpqdqddddqqdqdqdqcqcqcqcdqdqqcqcqcqcqcqpcppcpqcppqcpcccccccqpccqccqccpccqccqcqccpqcqqqqdqdqeqeqerqdqdqqdqdqeqerfrrrrreqrqqccpppcccqdccqdqcpcccqqqqdqdqdqqqqccqqcqqcqcqcqcqcqccqqpqdcpcpcqpccpqcppccpppcpppcccpbbbcbbbccccpqcqcqeqdqddqqqdqdqdqdqdqdqqdqdqqcqqqcqqqpppqpqqpccqqcpcpcqqccqqcqcqcqcqcqcqqccqccqcccqcqcqqdqqeqdeqqedqdrqereqfrereqfedqdcqccccccccqdcdcddcqqqcqcqcdqdqdqdcqcdqqccqcqcqqcqcqcqcqccqcqdpcqccqccpqcccppcpcpcqccppcpcppbcbbcbbcccppqqqqcqqqdddqdqdqdqqdqqcdqdqcdqdqcqcqcpcqcqcpqppppcqqccqpccccpqccqcccqccqccqcqcqcpccccccqcqqcqdqeqeqeqeqreqeqeqqerrrereqerrqqrdqccqcpcpccpcqqcqcqcqccqcdqqdqeqdqqqcqqcqqcqcqcqcqcqcqccqqcqccqpcqccqcqcpcpccpcccpppcpcccpcbbbpbbbbccpbccpqcqcqcqdqdqdqqqeqqdqdqdqddqqdqcqqdqcqdqcdqqqqpcpcppqccqpcccccqcpccqccppcqccqccqcpqcccccpcccqccqcdcqqeqeqeqeeqeqeqeerqeerrrerqeredqqcccccqcccpqqqccqqcdqcqdqdqdqcdcqccqccqcqcqcqcqcqcqqccqccqcpqcqcpccppcpcqcpqcpcqpccpcpccpcbbbbbbbbcpccqqqqdqdqdqdddqddqeqdqdqqddqdqqdqdqcqdqcpcqcpcpccccpqcpcqpqcpcqccccqccqqcqcqcqcqcqcqqcqcpccpccccqqdqdqdqeqeqeqqeqeqeqrqerrqeerreeqeqqeqdqdqdqcqdpqqcqccqcccqcdqdqdqcqdqqqcqqcqcqcqdqcqdqcqcccqccqccqcqccqcdpccpccpccqppcccpcpccpbbbbbbbbpcpccqcqcqcqdqddqdqdqqeqqdqdqqdqdqqdqqqdqqdqqcqqcqcccccpcpqccqpqccccccpccccqcqcccqqcqcqccqqccccccccccccdcqdqdqeqeqeqerqeqrreqereqfrqeqrqeqeeqdddqqqqqqcqqqccqcqcqqqdqdqdqcccqccqcqcqcqcqcqcqcqqcqcqcqccqcqccqcqcpcqcqcpcpcpcqpcpcpcppbbbbbbbcpppcqcqcdqqqqdqdqqeqdqqeqedqeqdqqdedqeqdqpdqcqcccqcpcppcqpcqcqpdqcqccdqcqccqqqcqqccqccqcqcqcqcqcqccqccqcqqqeqqeqrqerreqeqfqrerqerrreqeqeqeqdqcqccdqdqcdqccqqccqqqcqdqdqcqcqqcqcqcqcqcqcqcqcqccqccqcqcqccqcqcqccqcqcppcqcqcqpcqccpcppbbbbbccpdqcqcqdqdqcqdqeqeqdqqeeqdqqqeqdqqqqqdqdqdqdqqcqqccqccpccccpqqppcccccqccccqccqccqcccqcqqdqcqcqcccccccqccccqdqdqdrqdrreqeqeqrrreqrfqerqeqeqeqdqdqdqqdqqcdqqccqcpccqcqcqcqqcqcqccqcqcqcqccqcqcqcqdqcqqcqqcqqqcqqqcqqcqdpcqcpcqcpcpppppcppppqcqcqdqdcqeqdqdqeqeqeqdqeqdeqdrqqedeeqdqdqdqcqdqqcpccqpcpccqqcqqdcqcqqqcqqqcqcqqdqqcqqcqcqccqcqcqcqccqcqqdqedqqeqqqeqrrreqeqreqreqfqereqeqeqeqdqdqdqcdqcdqcqccccpcqqqcqcqcqcqcqcqcqcqcqqcqcqcqcqcqqcqcqccqcqcqqqcpcqcqcqcppcpccppcpccbpbbcccqcqcqdqcqqddqeqeqdqeqeqqeqeqqeqqeeqqqqeqeqdqdqdqdqcqdcpccqcccppqqccqqdqccccqcqqcqdqccqcqcqdqdqqccccccccqqcqcqdqqeqeqeerreeqeqeqerereqeqfqrdqeqdqdeqdqqcqdqdqqqcqccccqcpdqcqdqcqcqcqcqcqcqccqcqcqcqcqcqcqcqcqcqcqcqqqcqcqcpccpcpcqcpqcpcppcpbcpcpcpccpcqdqcqqdqdqdqeqeqeqeqeqeqeqedqqeeeqdqdqdqdqdqcqdqcqcqccpcppcqqccqdqcqcdqqdqqcqcqdqcqddqcqdqdqqcqqcqcqcqdqdcqqqeqerqeqeqqeqrreqrqeqrreqeqeqeqeeqdqdqddqqqcqcqqqqcqcqpqcqcqcqcqcqcqcqcqdqcqdcqcqcqdqcqcqcqcqpdqccqcqcqcqcqcqcpccpcpcpccccpbcccppcqcqcqdqqdqeqeqeqeqeqeqeqeqeqeqrqqqdqeqdqdqdqdqdqccqccqcqqcqqcqpccqcdqcqdcdcpqqqqdqqdqdqdqcqdqcdcqcqdcqqqdqdqdqeqeeqeqrerrdrqeqereqereqeqeqeqqdqqqqdqcqdccccqcqcqcccqdpcqcqqcqcqcqcqcqcqcqcqqcqcqcqcqcqqcqcqdqcqdqcqcqcqcqcpcpcpcpcpppcppcpcpcqcqcqcqcqddqdqdqeqeqeqeqeqeqeqeqqqeeeqdqeqdqdqdqdqqqqqqcqcccqcccqdcqddqqdcdqqdcqcqcqcqdqqdqdqdqdqdqqqdqqdqcqddqdqeqeqeqreqeqeqeqereqrqeqeqrereqdqqdqdqqqcdqcqdqqqccpccqpqcqqcpcqcqcqcqdcqcqcqcqqcqqcqcqcpcqcqcqcqcqcqcqcqcpcqcqcpcppcpppccpccccccccqcqdqdqqdqdqeqeqeqeqeqeqeqeqeqrerqqeqeqdqeqdqdqcqqqpqcqccqqqcpccqcqdqcqdqqcqdqcdqqcqpeqdqqeqqdqdddqdqcqdqcqqdqeqdqeqeqeqeqreqrqeqeeqerqeeqeqeqeqdqdqcdqcqddqcqcqccqcqcccqccqcpdqdqcqcqcqcqcqcqcqcpcqcpcqcqcqdqcqcqcqcqcqcqcqcqcqcpcqcpcpcpcpcpccpcpqpqqcqcqcqqdqdqqeqeqeqeqeqeqeqeqeqeeqeeqeqqeqqqdqdqdqddqcdqcqcqcccqcccqccceqqqqqddqqdqcqdqqeqdqeqqqqeqqqdqdqdqdqqdqdqeqeqeqreqeqqeeqrrqreqerqrdqeqeqeqdqdqdqddqcdqpdcqccqqqccqccqcqcqcqcqdqcqcqcqcqcqdqcqdqcqqcqcqcqcqcqcqcqcqcqcqcqcqcqcpcpcpcpccpccqcccqcqdqdqdqdqeqeqeqeqererereqererqeqqeqeeqqqeqeqdqdqdqqdqccqcqqccpqccqcqqcqdqdqcddqdqdqdqqddqdqeqqqqeqdeqeqeqdqdqdqeqeqeqeqeeqrererqeqeeqrqeqeeqeqeqdqeqdqdqqqdqcqcqcqcqccqcccqcqqcqqcqcqcqcqcqcqcqcqcqcqcqcqcpcqcqcqcqcqcqcqqcqcqcqcpcqcqcppcppcqcpcqqcqcqcqdqdqdqdqeqeqeqeqeqeqeqeqdqeeqeeqeqqeeqeqdqeqeqdqdcqqqcqqcqddcqcqdddqcqdqdqdqddqqeqqeqeqeqdrqeqqeqeqdqeqeqeqeqqeqeqereqrqeqeqqeqeqqqedrqeqreqeqeqdqdqdqcqqdqqqcdccqccqqccqqcqcqcqcqcqcqcqcqcqqcqcqcqcqdqcqcqcqcqcqcqcqqccqcqcqcqcqcpcpcqcqcpcqcqccqcqdqcqdqdqeqeqeqeqreqeqeqeqereqeqreqreqqqeqqeqdqdqdqdqcqqqdqcqccqpqqqqqdqqdqqqqeqrdqeqqeqdeqeeqeqeqeqdqdqdqeqeqeqeqrqereqrqerreqereqqeeqeqeqedqdqdqqdqdqcdcqcqcdqqcdqcccqdcqdqcqcqcqcqcqcqcqqcpcqcqcqcqcqcqcqcqcqcqcqcqqcqcqcqcqcpcccqccpcpccqpcqcqccqdqdqdqeqqeqreqeeqeqeqeqeqeqeqeeqedqeqreqeeqdqeqdqqdqcqcqcqdqdcdqcpceqdqqdqdqedqqeqeqdqeqqeqqeqqeqeqeqeqeqeeqeqeqeqeqeeqeqerqrdqrrqeqerqreqeqeqeqeqdqqcqqqqdcqqccdqcdqdqqcqcdqcqpdqcqcqcqcpcqdqcqqcqcqcqcqcqcqcqcqqcqcqcqqcqcqcpqccpccccpcqcqccqcqcqcqdqeqqqrdqeqrqereqereqeqereqreqreqeqeqqeqeqdqdqqdqdqqcqdqqcqqdqddqddqdqdqddqdqeedqdqeqerqeqeeqeeqeqeqeqeqeqeqeqeqeqerqerqerqqeqerdeqerqeqeqeqeqeqdqqdqcqcqcdqdcqcqdqcqcqdcqdqcdpqcqcqcqcqcqcqdqcqcqcpcqqcqcqcqcqcqcqcpcqcqqcqcqcqcqccpcqcqpcqccqccqcqcqdqqdqeeqeeqeqedeqeqeqeqeqerqeqdqeeqeqeqeeqdqeqqdqdqcdqqcqdqdcqqqeqqddqdqeqqdeqqeeqeqeqeqerqerqeqeqeqeqeqeqeqeqeqerqerqeqdrfqeqeqqerqeqeqeqereqeqdqqdqqdqcqdqddqcdcqqqdcqqddqdqcqcqcqcqcqcqcqcqcqcqdqcpcqcqcqcqcqcqcqdqccqcqcqcqcqcqcqqcqcpqccpqcqccqqdqdqeqqerqeqerqqeqereqerreqeqeqeqqereqerqeqeqdqqdqqdqdqdqqdqdqdqcqqqedqqdqqdqeqeqqreqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqeqrrdqrqeqreqrdreqrreqeqeqeqddqddqqqcqcqdqddqcqddqdqcqcqcqcqcqcqcqcqccqcqcqcqcqcqdqcqcqdqcqcqcqpqccqcqcqcqcqcqccqppcqcqqcqcqcqcqdqdqdqqeqereqreqeqqeqddqeqeqeqeeqdqeqeqeqeqeqqcdqqdqddqdqdqdqdcqdqqqdqqdqeqeqereqereqerreqeqeqeqeqereqeqeqeqeqeqreqreqeqeqereqeqreqrqreeqreqeqeqeqeqqdqcqcqqddqdqcqddqdqdcqqdqqcqcqcqcqcqqcqcqcqcqcqcqcqcqcqcqdqdqcqcpcqcqccqccqcqcdqdqcqcdqcqqccqqcqcqdqdqeqrdqeqeqrdqeqqeqrqeqeqereqqeqereqeqeqdqdqdqdqqcqdqdqddqdqdqeqqddqdqddqeqeqeqeqeqdqeqdeqeqeqeqereqeqereqereqeqeqeqeqrqeqrqdrrqerqqeeqqeeqeqeqdqdqddqqdqdqdcqqdqddqcqddqcqqcqcqcqcqcqcqcdqdqcqcqcqcqcqcqcqcqcqcqcqcqdqcqccqccqcqcqqcqcqqqccqdqcqcqcqdqqdqeqedqeqeqeqeqdrqeqedeqeqeqdqeereqeqereqeqeqdqdqcqdqdqqqqdqdqdeqqqdqdqeqeeqeeqereqeqerqeqeqereqeqrqeqeqeqeqerqerqeqdreqeqerqeerqeqerqrerqreqeqeqeqdqdqcqdcqdqdqcqddpqdcqqdqcqcqddqcqcqdqdqqcqdqdqcqcqcqcqdqdqdqdqdqdqcqcqcqqcqcqddqqdcqcqcdqpqcqcqqdqdqqeqqeqeqeqeqeqdqeqeqqeqeqeqeqqeqeqeqeqeeqdqdqdqdqqddqdqqqqdqdqdqeddqdqeqdqqqreqeqereqeqreqfqrqeqeerreqrreqrrerqeqqrqeqrqeqeqrqerrrqereqeqeqeqeqeqdqdqcqdqddqcqqqqdqdqqdqdqcqqdqqqdqdqcqdcqdqcqcqcqcqcqcqcqcqdqdqdqdqcqpccqdqdqqcqcqqqcqcqqcqcqqcqcqdqdqdqdeqeqdqdqeqeqeqeqeeqeqeqeqeeqeqeqeqeqqqeqdqdqddqqqdeqdeqqdqdqqqdqdqeqqreqeeqeqeqeqeqerqeeqreqqeqreeqreeqqqqqeqqeeqreqeeqrdeqeqeqrreqrreqeqdqdqdqdqcqdqdqcqqqdqdddqdqqdqcqqqcqdqdqdqqdqcqcqcqqcqqcqcqdqqdqqdqdqcqcqcqdqcqcddqdqqcqddqqcqdqcqdqdqdqdqdqdqdqdqeqdqdqeqdqdqqdqeqeqeqreqfqfqeqqrdqdqqcqddqqdqdqqdqqdqdqqedqeqdqeqeeqqqereqeqeqerqerqerqfqeqeqqeeqqerqerrqeqeqqqeqeqrreqqerrqeqdreqeqeqrqeqdqdqdqdqdcdqdcqddqdqqqcqcqdqcqccqdqdqdqdqdqqdqcqqcqcqcqqcqqdqddqdqdqcqcqcqcdqdqqqcqcqqqcqcqqdqcqdqqdqdqdqdqqdqdqeqdqdqdqddqqeqeqeeqeqeqeqerqdqqcqdqdqqdqdqddqdqdqedqqdqeqeqeqqerrqeqeqeqerqrqerqeqeqerrerqereqeqdqdqeqdrqrqeqqrfqdreqerrqeqerqddqdqdqdqdqcqqdqdqcqqddqqdqdqqddqdqddqdqdqdqdqdqdqqccqqcqqcqqqdqqdqcqqcqcqcqqdcqqdqdqcqqqdqdqcqqdqcqdqqdqdqdqeqqdqdqqddqdqeqdqeqerqeqerrereqqeqdqdqddqddqqdqdqqqdqdqqeqqdqdqeqeeqeqreqeqereqeqrqeqerrrreqeqreqreqrqeqqeqqqqeqrdrreqreqrrdqrrdqerrqdqeqqqeqdqdqdqqdqdqdddqqdqcqdqdqdqqqdqqqdqeqdqdqqcqcqqcqcqqcdpdqddqdqcqcqcqcqqcqdqcqdqqdcqdqqdqdqdqqdqdqdqqdqdqdqdqdqdqcqddqcddqqeqdrqeqedqeqeqeqdqdqcqqqqddqdqdqddqdqqedqeqqeqeqqeqqeqeqeqreqeeqreqdqqqrqqqeqqeeqqeqqeqqqeqrdqreqeqqqeeqreqeqeqeqeeqdqdqdqdqqdqdqdqqddqdqdqdqdqddqqdqqqeqeqdqqdqdqdqcqqdqqqcqqdqcqcdcdqcqcqcqcqcqdqdqdqdqdqeqdqqdqdqdqdqdqdqdqdqdqdqcqdqdddqcdcqcccqcdqddqedreqqreqeqeqeqdqqqqqqdqdqdqqdqdqqdqqdqdeqdqqeqdrqeqeqeqdqeqeqeqqerqeqrqeqereqqreqeqeqqeqqeqeqdrqerqreqeqeqrqeqerqqqeqdqdqqddqqdqedqqdqdqdqdqdqqdqdqedqdqdqdqdqdqqdqdcqqqqdcqdcdcqcqqqcqcqcqdqdqeqdqeqdqdqdeqdqeqdqdqdqdqdqdqdqqdcqcqqdcqcccccccccdqqqeqeeeqeqeqdqeqdqdqccqdcqqcqdcqdqdeqqdqeqqdrqqdrqdeqeqeqeqqeqqeqeqqeqeqqeqerqqeqqqqdqqeqqeqeqerqeqdqqqqeqereqrqdqedqqqeqeqqeqeqqeqdqqqdqeqdqdeqdeqqeqdqqeqqeqdqqdqcqdqqqcqqcqqcccqccccccpcqcqdqqdqdqdqeqdqeqeqeqeqeqeqeqedqddqqddqcqcqqcccqccccccccccqddqeqerqqeqqdqeqdqdqdqdqqcqcqcqdqdqcqcqrqqdqdqdqreqddqqeqdqeqeeqeqeqeqeqrqerqeqeqeqrqrqqeqqerqeqqqdqeqreqrqrqrdqrdqrdqqddqdqdqqeqdeqdqeeqeqeqqeqqqqddqdqedqddqdqddqdqqqdqqqqdccqccccccpcccqcqcqqdqdqdqdqeqdqeqdqeqqdqeqqqqqdqddqdqdpdqcqcccccccccccccqdqeqqeqqeeqeqdqdqdqdqdcqdqdqdqcqdqdqdqqdqqeqeqqqeqqeqdqeqdqqqdqeqeqeqedqqqqrqeqeqdqqeqqqqdqqerdqeqdqqdqqedeqqeqrdqqeqqeqeqeqqeqeqeqeqqeqeqeqqeqqqqqeqeqqdqqqdqdqqdqddqdqqeqqdqcqcccccccccqcqcqqcqqdqdqeqeqdqeeqeqeqeqeqeqqedqqdqdqcdqqqqcccccbbccccqcdqdqeqeeqqqeqdqeqdqdqcqdqcqcqcqcqcqcqqdeqedqdqqqqdqeqeqdqeqedeqeqqdqqeqqrqeqqeqqeqdrqeqqeqeqeqqqeqqqedqeeqqqeqeqeqeqdqdqdqdqeeqeqeqeqeeqeqdqeeqeqeeqeeqeqdeqedeqdqqdqdqqdqeqqdqdqccccccccccccccqcdqqdqdqdqdqeqeqqeqeqeqeqeqeqeqqeqddqdqcqcqcqcqcpccb[a[bcccqddqeqeqqeedqeqdqeqdqqdqdqcqcqcqdqcqcdqqqdqqdqdeqeqdqdqeqdqdqqqdqqqqqqeqdqeqqeqqeqrqqeqqeqqqeqqeeqqedqqdqqqqdqeqdqeqeqdqqeqqeqqeqeqeqeqqeqeqeqeqerqerqeqdrqdqqqdqqdqdqqqqeqeqdqcqccccbbcccpcqqcqqqcdqdqeqeqeqeqqeqeqeqeqqeqeedqqdqqdccqqcccccccbabZbcccccqeqeqqeqqqdqeqdqqcqqcqcqcqcqcqcqcqdqrqqdeqdqqqqdqdqdqqqdqdqdqdeqqqqqqqdqdqqdqeqddqeqeqeeqqdqqqeqeqeqdqqqdqdqdqdqdqdqdeqedqeeqeqerdqeeqeqeqeqeqeqeqqeqeqeqqqdeqdqeqqeqqeqrqdqccccccbccccccqcdqdqqqeqdqeqeqeqrereqeqeqreqqqeedqdqcqdqqccqccccbZZZbb[cccqdqdqeeqdeqqdqdqdqdqcqcqcqcqcqcqcqcqcqqqqdqqqqqdqdqddqdqeqdqqqqqdqqdqdqdeqqeqqqqeqqdqqqeqqqeqdqqdqqdqqdqdqcqcqcqdqqdqqeqqererdqerqerereqeqreqeqrreqeqeqeqeqqdqqdqqqqqedqddqccccc[bccpcpdqqqdqdeqdqeqeqerereqeqeqeqqerqrqqedqqqcpcqccqccccbbbcccccqdqdqqdqqqdqdqdqdqqcqdcqcqcqcqcqcqcqddqedqedqqqqeqqdqqdqqdqeqddqqdqdcqqdqdqqedqqeeqqdqqeqdqeqqeqqqeqqqdqqcqqcccqqdqddqeeqeeqeqereqeeqeqdreqeeqereeereqeqeqeqdeqeeqdqqeqqeqqdqqcpcccbccccccqcqddqqqqeqeqeqreqeqeqeqererqeqeeqddedqdqdpqqqccpccccccccccqcqqdqdqdqcqdqdqdqqccqqqcqcqcqcqccqcqqqdqqdqqqddqqdqdqdqdqqqdqeqqddqdqqccqdqdqqqdqqqeqqdqqqeqqeqqeeqqeqqdqqcpcccqpccqdqeqqerqeqeqrqerqeqerrqerqfqerqqrqerqeqqeqqeqqeqqddqeqqdqqcqccccccccpcqccqdqqdedqqrqereqereqereqeqdreqeqeqeqqqdqqcqcqcqcccccccccccccccpcqcqdqcqdqcqqcqcdqcqqqcqcqccqcqcqdrdqdqdqqdqeqdqeqeqdqqedqdqddqqdqccqqcqcqdeqeqeqqdqqdqeqqeqqeqqerqeqeqcqccpccccqccqdqdrqdrqereerrerrrrdrerreqrreerrreeqerqeqqdqqeeqqqdqeqddqcqcpcccpcccqcqdqdqeqqeeqeqeqerrerrdqeqeqeqeqeqeqdeqddqcqqqcqcqcccccccccqcqqcqdqcqdqcqcqcqpdqcccqcqccqcpcqcqcqdqeqdqdqdqqdqqdqdqdqdqqqeqeqqqcdqdcdqcqdqqdqqqqqdqqdqdqqeqreqqqrdqcqpccppcpddqeqqedrqeqqeqqeedqreqerreerqreqeqrreqeqeeqrqqqeqeqqqqqqcqcqcpqccqcqcqdqdqeqeqqeqerrereqrqreqeqeqeqereqeqdqeqqcqcqcpdcccqcqdddqcqqcqcqdqcqcqcqdqcqcqcqqqcqccqcqcqccqcqcqdqdqeqdqedqqdqqdqeqdedqdqqdqdqqcqcqcqdqqdrqeqqeqeqdqqqeqeqdqdrqqeqqcqcqpcppcccqdqeqeqqeeqreqeerqrreqfqeerrererrrqeqereqqeqqeqeqdqdqddqdqcqcqcpcqcqcdqdqqdqqqdrqerqerqererreqeqeqeqeqeqqeqdqdpqqqddqdqqqcqcdcpcqcqcqcqcqcqcqcqqcccqqccqqcqcqqppqdqddqdqeqdqqqeqqqqqdqqqeqqqqdqqcqcqddqqqeqqeqqqqqdqdqdqdrqeqeeqqqcccccpccccqqdqerqrqrqerqeqeeerrerrqererererrrerqqereqeqeqqqqqdqqcqqqcqcqdqcqcqqdqqqqreqerqerrerqeqeqereqeqeqeqeqeqdqqdqcqcqcdqcqdcqcqdqdqqqccqcqcqcqccqpqcqcqcqcqcqqqccpqcqcqdqqqcqdqddqqdeqqqeqdqqdeqedqdqcqqcqqcqdqdqeqqddqcqqdqqdqddqdqqeeqcqcppbcccpqcqdqdeqedqreqdeqeqqqeqrererrreqerrerqeerqeqrqeqdeqdqqqdqqcqqcqdqcqdqdqdqqreqqeqrdreqererrereqeqereqeqeqreqedqdddqqqqqqqqdqdqdcqcqccqqqcqccpcqcccccqqcqcqcqcqqpcqcqeqqqdqdqdqqqqqdqqdqdqqqqdqqcqdqcqcqqdqqdqqqdqqqdqcqqqcqqdqqdqqqdqccccpbccpcqcedqeqeqqedqdqdqdqeqeeqerreeqrrreqereqreqqedqqqqqeqdqdqqdqdqqqqqqqqdqdqqqeqeqeqeqreqrreqerreqfqeqeqeqeqeqedqeqdqcqcqccdqcqqqdqeqdqqcqpcqcqccccqccccqcqcqcqqqcqcqpcqccccqcqdcqdqdqqqedeqdeqdqeqqedqqdqcqcqcqcqqdqdqeqdqqcqqqqccpcqcqcqdddqcpcpcpcccccqcdqqqdqddqqqdqqqqqreqreqrereerrerqeqereqrqeeqeqqqeqqdqqqdqdqdqqqdqqeeqeqeqrqerqererreqerqerreqeqereqeqqdqdqdqcqqcqcqdpqdqdqdqqcqcqpccpcqccqcqpcccccqcqcqqcqcqqcqqcdqcqqdqdqqdqqqeqqdqeqqddqqqcqcqcqccqdcqdqqdqqdqdqccqqcqccpccpcqqqcqcccccccpccqcdqqqeqdqdqpqqqcdeqderrrererqrdrqfqeqqqeqeqqeqeqeqqeqeqeqdqqdqqqdqqqqqqdrqeerqererqerrererqeqerfqeqreqqdqdqddcqcqqqdqdqeqdqcqcqqqccqccccpqqcccpcpqcccqccqccqcqccqqqcqcqdqdeqdeqdqeqeqddqqdqqcqcqcqcqqcqqdqdqqdqqdqqcqcccccppcdqccqqcqqcpccpcpqcddqeqqqppqcqqcqqqeqrerrrereqreqrreeqqeqeqqqqeqqeqqqqqqqqdqqdqqeqqeqqrdrqrdrrqrerreqreqeereqreqredqeqeqdqqqdcqqcqcqcqdqdqdqcqcqcqccqqcpccqccccqcccqcqcqcqcqqccqqcdcpcqcqdqdqqdqqdqdqdqdqqdqccqcqdqcqccqccqqdqdqqqqcqqcqpcpccpccpccqcccppccqcdqdqqeqdqdqcqccqqccccccqqrerqeqeqeqeqreqdqqeqqeqeqeqqeqqrererdrdqeqqqqdqqeqeqqqeqeeeqqqrqreqrereqeeqqeqeqeqeqqqqcqcqqqcdqdqdqqqqqcpccccccpcccpdcccccqccqcqcqccqcqcqdqqcqcqdqeqeqeqeqdqqdqdqqcqcqcqcqqcqdqcqqqqqqdqqcqcppccppccqqcqqqcqpcccqqddqqdqqccqqpccccqcdqdeqerrerrqerreqerqeqeqqeqqeqeqreqrqqdrqqqqdqqdqdqeqqqerqerrqqqerqerqrerreqrrfqreeqeqeqdqddqcqdccqcqccqcqqcqcpcqcccpcccqcqcqcccpcccqcqcqccqqqccqcccqccqcqcqdqdqdqdqqdqeqqqdqqcqqqcqqcqcqqqqdqccqcqdqqdcqcpcccpccpcccpcccqcqdpcqcqdqdqdqccqpcccccpcccqdeqreqeqeqerqdqrqqeqqeqeqqeqerqeqrdrfqqeeqeqqeqqqeqqeeqqerqdrereqerqeerqerreeqereqreqeqeqdqdqpccqqccccqccccqccccccccqcccqcccccqcccpcccqccpcqcqccpqcqdqccqcqqdqdqeqdqqeqddqqqcdqdcqqccqdqcccqcqqqqqdqdqqqcqpccpcpcppcppqqcpccqdcqcdqqcqccqcpppccpccqqdeqrrrqeqeqeqdqeqeqqdqeqdqqqeqeqrqrreqqeqeqdqeqqdqqqeeqqeqeqeqrqeqrqerereqrereqeeqeqdqdqdqqdqcqcpccqcpcccqcqcqcpcqcpccpcpcqcqqcqqccccqqcdqcccqcqccqcqcqdqdqqedqdqqqddqqqdpqqqqcqqqqqcqccccqqcqcdqcpccpcpbccppcpccqqcqcqqccppccqqcccccpcqcqdqeeqrqeqeqreqqdqdqqdqqqeqeqrqereqeqreqrqeqqedqqreqqeqeqreqeeqeeqeqeqrrerrqerqeqeqeqeqdqcqcqqccqpccccpcccccccccqcpccccqqccccqqcqpdqccqcqccqqcqcqqccqdqdqeqdqeqdqddqqqdqdqpcqcqqqcdqcqqqcqdqqqqcqccppbpccccccccpcpcqdpqcpcccqcccqpccpcpcpcqccqdqeqqerqeqrqeqqdeqqdqdqqqdqeqdrqeqrqeqqeqeqqeqqdrqqqqeqeqrdqrqqrqqeqerreerreerqeqeqeqqdqdqqcdqccpcpccppcpcpcqccqqccpccccccqccqcccqqccqccccqcqqcqcccqcqdqdqqdqqdqqdqqcqqqdqqeqdqqdpcqqcqcqcqcqqqcqqdpccppbbppccppqcppcccpqcccpqcpccpccccqddqdreqdreqqeqeqqqdqqdqdqqdqqdrqeqereqreqeqreqqerqqqeqerqeeqedrrerrrqeqrqqrqqeqeqeqeqeqdqdqdqcqcpccccpcqqcdpqcqqpccpccccccpccqpccqcpccqcdqpqqcqcqdqdeqdqqddqdqdqqqdqdqqcdqqqdqqcqcqqdqcqqqdcqcqccppccpcccccqccqccqcccccccccqqpqcqccccqcdqdqeqeqrdqrqrqdqdqdqdqqdqdqqdqqdqrqrqrreqrqeqeqeqqeqqrqeqqqqeqqeqqeqeerererrrerrreqeqeqqdqdqdqdqqccpccbbbcpccqcqcqccqcccccccpcpcpcqqccqccpqqccqqcqccqdqdqdqqdqqqqcqdqqqdqqdqdqqqcdqccqcqdcqqcqdqdpqcqcpccppcbpppcpccpcpppccccccqqdcqqcqcdqdqdeqdqeqeqqqqdqdqqqqqcqqddqqqeqedqrereqeqrreqqeqqqeqqeqqeqqerqeqqeqrqeeqeqqrdqeqqeqeqdqdqqqccpbbbbbpqccqdqccpccpccccqcccccqpqccdqcppccqcpqqcqdqdqqdqqqqcdqdqqdqdqeqqqdqdqqcqqcqcqqccqqqdqqcqqcqcpccccbpbbcpcccqccppcbbccccqccqpqddqdqqqeqeqdqeqeqqeqqqdqcqcqcqqcqqqqeqeqqeqqeqeqreqqeqdrqeqdqeqeeqeqeqeqrerqeeqrqerqeeqeqeqeqdqqdqddqqcpbbbbbcpqqdcqcqpccccpccqcqcpccccqqcqcccqdcqqcqcdqdcqdqdeqqqqcqqddqqeqqedqcqqcqcqcqcqcdqqdcqqqqcqcpcpcpcpbcbpcccpccpccbbbbcbcccqccqcqdqcdpqqqqdqdqeqdqqddqddqdqcqcqcqcqdqqdqrqqeqreqrrqeeqeqeqqdqeqdqdqqeqeqerrerqerqeqrqerqqeqdqdqqdqeqdqdqqpbbbbpccqqqqqccccqcqcccccpcqpcccccqccqddqqqqcqqdqdqqdqqqcqqcqdqqdqeqqqdqdcqqcqcqcqcqcdqqcdpccqcpdqpccbppbcpccpcccccbbbbbcccpqccdcqqqdqcqcdqcqdqdqdqddqqdqqcqcqcqcqcqcqdqdqdeqreqeqedrqqeqdqddqdqdqdqeqeqreqrdqeqeqeqrqeeqeeeqeqqqcqqqdqcccbbbbbbpcppccqcqpcqcccqccpcqcqcccqccpcpccqcccqcqcqcdqdqedqqcdqqpqcqdqqqdqqqqqqcqcqcqcqcqqccqqcqqcqcqcpcqpcpbbpcccpccpcpcccbbbbccpqcqccqqddqdqdqdqdqdqqdqqdqqcqqcqcqcqccqcqcqdqqqqqeqeqqeqdqddqcqcqdqdqdqqqqeqreqeqrreeqqreqqedqqcqqqcqqcqcpcbbbbbcccqcqccqcccccqcccqdcccccqcqcqpccqcqcqcqpqqqdqqddqqccpddqqqqeeqqqdqcdcqcqcqcqcqccqqcqccpcqcqdpcpppcpcpccqcpccpccbbbcccpqqqccqcdpqcqcqcqdqqdqcqccqccqcqcpccqcqcqcqqqqqeqrqerqqdqdcqcccqccqdqqrqeqereqrreqeqqereqreqqdqdccccccccpqccccpccpppccccccqqcqcqqcqqqcqcqcccqpqqccqqcqccqqqqqdqddqqcqqdqqqqqqqddqdqqqcqcqcqcqcqcqqcqqcccpccqcpcppccppccpcpccpcccppppccccccccccqcqcqqcdqcqqcqcqcqqcqpcpcqcqcpcccqcqcqdqeqeqeqqdddcccccqccqcqcqeqqeqerqqeqeqerqeqdrqqeddcccqppqqccqcqccpcbbcppccccqqqcqccqccccqqqdqccppccdqqcpccqdcqdqqddqdqqccqpcqqcdqqqcqpdqcqcqccqqpcccppcppppcqpccppcpqcpdqpqcpppbcccccppcpcccccppcqqcqccqcqcqcqcqcqcqpcpqqcqcqdqqdqqqeqeqdqcqcccccccccqdqdqeqrqeerreqrqeqerrdrreqdqccccccccccqqqcpccpcppbcpcqqcqdddcqqcqcqqcqccqcqccqcqcqqccqcqcqdqqqdqccqqqqqcqqqcqdqcqcqcqcqcqcqcqcccpccccpccqqcpcpcpcpqcppqcpcqqcpcpppccccccpcpcpcccqcqqcqqcqqcqcqcpcqccpcccqcccpcqcqcqqdqeqqqdqcccccccccccqcqcqqqeeqqrdqrereqeqeqrdqeqdccccccbccccpcccqcqcqpcccbbbbccccqdqqqdqdqqqcpcqccccqccccqcqccqcqdqqdqddqdqqccqqcqcqcdqcqcqqcqcqcqcqcqcccqcccppcccpcqcqcpcqpcqpcqqdqqcpcqcpcpppbcbbppcccpcqccqcqccqccqcpcppccqcqpccpcqqcqcqdqeqqdqdqcqcccccbbccccqdqdeqqerdrreqrqrqeqrereqqdpccbbbbcccpqcdqdqcpcpcbbbbbbccccdeqedqqpqqdcqcccqcqqcpcccqcqcqqcqdqdqqcqqcqqqcqdqcqqqcqcqcqcqcqqcqpcpcpcccpccpcpcpdpcqqcqcqqcqpcqqqqpcqpccbcbcbccpcpppcpcqcpcqpcqcqcpcpcpccccpccpcqcqdqdqqdqqdqcqcccccbZccbpcqcqdqqqeqdrqdrqeereqrqrqeqdccccbbbcpcqccqdqdqdqcccbbbccccqeqqeqdqpqcqccqqcqqqcqccqqcqcqpcqdqdqqdqqccqdqqcqdqcqdqcqcqcqcpdqcpqpccppcppcqqcqcqcqqcpqcqcpccqcqccqqcpccppbbcbcccpccppcqcpcpdpccpcpcqcqcppcpccqccqcqcpdqcqqdqqdqccpccbZcbcccccqcqeqeqrqerrerqqeqerqrrdqqpbbbbccccqcqdqeqdqccpbbbbpcqqeeqeqqcqqqdcqcdqcqcqqcqdqqcqdqqcqdqdqdpqqqdqcqqdqcqcqcqcqcqcqdqccqcccpccpccpppcqqcpcpqcqcpccpcpcpqqcpcqcccpcbcbpbbbpcccppppcqcpqcqcpcpqcpcppccpccpcqcqqqcqqcqqcpcccccbb[bccpccqcqdqedqeqeqeeqreqeeqreqdqqccbcbccpcpcccqqdqqqcbbbbbccqdqereqdqqcdqqdcqccccqcqqcqqcqcqdcqcqddqdqdqrdddqqdqdqdqqdqqdqcqqcqcqqccpcqcccpppcqdpccqqqccqcpccpcpcppcqdpcppcpcccbcccccpccpcpcpcpcpcccpcqccpcqcccpcpcqcpccqcqccqqcqqcqdpcccccbbcccpcqdqqdqrqeqeqrqreqeqrreqqdqpcccccccqcqdqdqcqcqcpccbbbcpcqqeqeqeqdqqddqcdqqdqdcccqccdqqdcqdcqdqdqdqqqqqqdqdqdqqqqdqdqcqcqqcccqcccccpppqccpcqcpqccqppcpccppcqcpcqcccpcpbpbpbpbpccppcpcpccqcppcpccppccqpqpccqcpcpcqqqcqqcqcqccpccccccccpcqcqqqqdeqeqeqeeqerqedeqeqdddcccccpqcqqdqqcqqccccccpppcccqeqeqeqqdcqdqddqqcqccqcqqdqqcpcqcqcqdqdqdqddqqqdqqqeqqqqqdqdqcqcpcqcqccppcccccqcqccqcqccpqccppcbpcccppcqcpcpccpccccccccccpcpcpccpppcpccqpqcpcpcccpcpcqpcqcqcqcqcqcqqcpcpccccccccpccqcqccpddqqeqeqeqqeqereqqeqqdqccqcpqqcqcqcdcpqcccccpcccccqcqdqeeqqeqeddqdqcqcdcqdcqcqccqdqqqcqdqdqdqeqqeqqeqeeqqeqqeqqdqdqdqdqdqcqcqqccpccpcccccpcqcpqqpcpccbbbbcbccppcqcqcpccpcpcpcpcpccpppcpcccppcqqpccqppcqcqcccpcpcqqcqqcqcqqcqcqcpcpcpccpccppqdqqqdqreqerqeqdqereqeqddqdcddqdqdqqqdqccccppcccpcqcpcqddqdqeqrdqqqddqqqqcdqcdccqcdqccqcqddqqdqdqqeqerqeqqreqeqeqeqqqdqcqcqcqcccqpcpcpcpcqcqcqcccpcppccbbbbbbbcppccpccpcpcpcpcpcpcpcpcpcpcpppcpcpqcqcpcqqpccpcpqcqcqcpcqcqpcqcqqcpcpcqcpcpccpcqdcqcdqdqdeqeqeeqeqeqdqqeeqdqeqqdqeqreqdqdcpccpccpcpqdqqqdqdqedqeqqqdcqcqccdqcqdqqddqddqqddqcqdqeqqqqeqeqerqrqeqqeqedqqdqdqcqcqpcqdccqqcccccqccqcqqcqcccbbbbbppcpccpccqcpcpccpccpppcpcppccqcqdpcpcppcccpcpccqpcpcqdpcpqcqpcqcpcqcqcpccpcpccpcqcqqdqeqqeqeqqeqeqerdrqdqeeqdqeeqereqeqdcqcpppccqdqdqdqqdeqdqdqqdeeqeqqcdqpqqcdcqdqdqcqdqdqdqdqeeqreqeqrreqrerqeeqeqqedqdqcqpcccpcqqccqqcqcqcqcccppcpcbbbbbbbcccpqcqpcqcqcpqcpcppcpcppcpcpcpcppcqqcqcpcpcqcpqcpqcqqcpqcqcqcqqcpdqcpcpcqppcpcqcqcccqdqqeqeqereqeqdqeqeqqereqqeqeqfqeqdcccbpcccqcqdqdqddqqqdqeqeqeqdqdqdqdddqcqcqdqdqeqdqqcqdqqdqqqeqeqrerdqeqereqrqreqqeqdqdqcqpcqccccqqcccqcccqpqccqccpbbbcppccccpqqcqcqcpcqcccpcpcpcpcppcpcqccqcpcqccpdpcqpqpqcpqcqqcpcpcpcqpcqqcqccpcqcqccppqcqcqdqdqeeqdqerqeqqeqqeqdereqreqeqdqccpccpccccqdqeqeqedqdqdqdqeqeqeeqdqqqddqqqdddqqdqdqdqqdqdrqeqreqerrrrqdrqeeqdreqdqdqcqcqccqcqcqccqccdqqcqdccqcppcpbbbpbcccpcqcpccqcpcqcpcpppcppcppcpcqccpcpcpppqcqccqqccpccqccpccpdpcpcpccqpcqcpqcpcpcpccqcqcqqdqqqdreqdrqerqeqdqqqdqeeqeqeqpccccccpcpqeqeqdqqdqqeqqeqqqedqcqqdqcqdqdqqdqqdqdqdqqdqqeqdrqqrrqeqeerqerqerqeqrqdqdqcqqcqccccdcqddqcqcqcqqccccpbccbbccpcpcqcqdqpcqcqcqcpcqpcpcpcpcpcpccpccqccpcqqccpcqpcqpqcqpcqqcpqcqqdpcqpppcqqcqcpqccpccpqccqdqqqeeqdreqqdqeqqdcqqddqeqdqcqcccpcpcpqdcqdqdqdqqdqdqeqeqerqedqqdqcqqdqdqdeqddqdqdqdqqeqqeqqeqrqeqeqqereqeqreqedqeqdqdqqcqdqcqcdcqqqqqqcpcpcccpccppccccqcqcqcqqcqcpcqcqcpcpcpcpcccqpqcpccpqcpccpqcpccqcccpccqcpcqcpcpcpqccqpcpccpcqcqcpccpcccqcqcqdqqqqeqerreqdeqddqqqccqqqccpccccccpcqqcqdqdqdqcqdqqeqqedqqeqedqdqdqddqdqdrqdqdqeqqqqqqeqreqreqrrerqeqrreqrrqrdqeqdqcqqpqqcqpdqqdqccccccpcccppccpcpcqcqqcqqcqqcqcpcqcpcpcccppcpqpccpcccppccpccpcpqpcqpqcpcqcpcpcpcppccpcqpcqccpppccpqccqqdqeqqreqeqeqeqeqpccccccqccqcqpdcqcpcpcccccdqddqqcddqdqeqeqeqeeeqeqedqqdqdqdqdqdqeqqqqeqqqeqrdrqeqreerqeqrdrqeqqeqeqdqdqcqcqppqqdddqqqcqcqcccpccqccqcqdpcqccqdpcqccqcqcpcpcqcqppqcccpccpcpqpcqcqppqcqcccqcccqcqcpcqcpcpccppcpccqcpcqcqcqcqcccpcqcqqeqedrereqeqdqcqccqpcccccccqcqcqcpqccqcqcqccqcqcdqqqeqqereqeqedqeqeqdqdqqdqqqeqdqdqqdqeqerqqqeqreqqqerqeeqereqeqeqdqdqqcqccqcqccqqcqpccqccqcqcqcqcqcpcqcqdqcqqcqdqcqqcpcqcqcqcpccccpcpcqcpqccccpcqcpcqcpcpqpcqqpcpcqcpcpcpcppccqcpppcccppccqpqccqdqdqeqeqeqereqqcccpccccqcqqcqdcqcpcqcqcqccqccccqdcdqdeqeqddqeqeqqedqdqdqdqdqrdqdqeqeqeqqeqdqqrqereqeeqerqqeqeqeqeqeqeqdqdqqdddddqqddcqqcccqqpcqcqcqdqcqqqcqqcqqcqdqqdqcpcpcppqqqpcqcqcpcpcpqcqcpcqcpcqcccpcccqcpcpcpcpcpccpqcqcpcpccpccpccpcpcqcdqqqeqeqereqeqdcqccpppqqccqcqcqdqcqcccqccqcqqqqdqdqdqqrqeqeqeqqqdqdqdqqdqqdqdqdqdqqeqerqrrqeqrrrrqreqeqeqqdqqdqdqdqcqqcqccqpdqcqqcqcqcqcqpdqdqqqcdqqcqdqcqcqcqqcqcqcqcqqccpcqccpqcqcqqcpcqcpcqcqqpcqqpcqcqcqcqcpcpcppccpcccpccpccpccpccqcqcqcqqqeqerqeqeqdqpccppqpdqcqcqdqcqcqcpccpccqqccdqqdeqeeqqeeqeqedqqqdqqdqdqqdqqdqqeqeqqeqedreqeqeqdrqdqeqddcqddcqdqdqdqdqcqqccqdcdccqqqqcccqdqcqqddqqcdqcqcqcqcqccqcqcqcpccqpqcpccqcpcpqcpcqcqcqcqcpcccqcccqcpcpcpcpccpcpcqcppcpccppcccqcqqcccqdqddqqeqeeqeqddqdccpcccpqccqcqcqcqcqcqcqcqqccqqcqcqqqqqdedqeqqqeeqqdqqdqqdqqdqqqdqeqqeqeqqdrrqfqereqeqddcqcccqdcqqqdqddqqcqcqqdqcqqcqqccqcqcqdqqqqqqqdqcqdqcqcqqcqcqccqcpcpccpccqcqdpcqcpcqcqcqcqcpqqcqpcqcqcpcpcpppcppcpcqccpcqcqcpcccccqqqddqeqeqerqfqeqdqpcccccpccqcqqcqcqcqcqcpcccqccqqdqcddqdddqeqqeqdrqedqdqqdqqeqdqqcqddqqqdrqeqreqeqerrrqreqeqccccccccqqdqdqdqqccccdcqcccqpcccqcqcqcqcqcqqccqqcccqcqdqcqcqccqcqcqcqccqpcqpcpccqpdqcqpcpcqcqcqcccpccqcpcpcqcpqqcpcpcccppccccppccpqcpccpdqqdqdqeqerqeqeqdqccpcpccqccqcqcqcqcqcqcccqpccpccqcccdqcqdqqdqqqdeqddqqdqddqqcqdqcqcqdqqqdqdqreqreqfqeqerqeqdcdccccccccqcqdqdqqcqqcqccqcqqqcqqqccqccqpqccqqqcqcqcqcqdqqccqqcppcccqqccpcqcqccqcpdqdqcqcqcqqcqqcpcqccpcpcppccqpqccpppcpqcpcccqpddqqdqdeqeqqerdqddqddqqccpcqcqcqcqcpcpcpcccpccpccqcqcqqddqqeqeqdqddeqqdqcqddcqcqdqcqdqdqeqqqrqeqrrrrreqdqcqcccccccccqdqdqdqcqcqcqccqpcpcqqcqccqccqcpdcqqcccqcqcqcqcqccqqcqcqcqdpcpcpccqcqcqccqcqcqcqcqcqcqccqccqcpcqpcqcqdpccpcpcccqcqccccpppcqcqcqqdqdqqqdqeqeqeqeqqdqqdqcqqdqcqcqcpcqcqcqcpcpccppccqcccqdpdqqdqqdqdqqqdqdqqdeqpqcqcqcqdqdqrqqeqqerreqeqeqeqdcccccbbcccqqdqdqcqdcpcqccqqdcccccqcccqccqcqqcqqdpqccqcqcqcqqqcqqcqcqccqcpcpqccqcqccqcqcqcqcqcqqcpqcqcppcpcpcqppccpppccpcpcppcpqccqqdqqqdeqeqerdreqedqqqdqqcqcqcppccpccpqccppccpccqqqqcqdqdqdqqeddcqdqcqdqddqcccqcqcqdqddqeqerqeqerreqrrdqccccbccccccqcqeqdqdqqcqqcqcqcqcqcqqcpcqcqccpcqqcqcqcqqpdqcqccqcqcqcqccpcpcpcccqcqqcqcqqcqcqcqcqcqccqccqcqcqcqpccccqccpcpccppppcccqcqccqcqcqcdqqqeqeqeqeqqeqdqdqqcqcqcqcpcqccpccpccppccppcccqcqcddqqcqdqdqqqdqcdqqcqqcpqccqqcqdqqeqeqeqeqrdqrrdqddqccccbccccccqdqdqcqqccqcqqqqccqccqpppdcqcqcqqcccqcqcqcqdqcqpcccpccqcccpqcqcccqqqcqcqcqcqcqcqcqcqcpcqcpqcqpqcpcpcqccpccpcppcpcqcqcqcqdcqdqddqqeqeqeqeqeqqqeqqcqdqcqccqcqcpccpccpccpqccpqcccqqqcqcdqqdqcqddqdcqcddcccqcpcqdqdqdqeqeqeqerqrerqeqqcccccccccqcqdcqdqdqcqcqcqcpcqcqcqccpccqqcpqqqqcqqqccqcqcqcqcqcpqqcqcpccpqqccqcqcqdqcqcqcqcqcqcqcqcpcqdpcqccqcccqqcccpcccpcccpppccccqcqdqcqdqqdeqeqeqqeqeqeeqqeqdqdqcqqcpccqcpccpccpcppccqqqccqcqqqdqdqdqqddqdcqcqdqpcqqcpqccqdqdqeqqeqeqdreqeqeqddqccccccqqdcqdqcqcqcqcqcccqccqcccqdcpcqcqpcccqcqccqcccpppqcqccqcqqccqcpcccqcpqcqcqcqdcqcqdqdqcqcqcqcpcqcqcpqcqcpccqppcppcpcppcpcpqqccqddqdddqqdqeqeqeqeqqqqdqqcqcqqccpppcppccccqpcpcccqccpqcqqcqdcqdcqcdpqqddqcppcpqcqcqdqdeqqeqrqqrqeqeqdqcdcccccqcqqdqcqcqppqqccqccqcppcdccqpdqcqcqqcqcqcqcqcqcpccqcqccqcqccqcqqqqcqcccqcqcqqcqcqcqcqcqcqcqcqcpcqcqcpcccqcccqccpcccccqccccqcqcqqqqcqqqqeqeqeqreqeqeqqqddqcqcqcpqcpcpcccpccpcppcccqcpcqcdcqpdqqqqqdqcqccpcccppccpccccqcqdqdqqqqedeqeqrqdqdqdqqcqqccqqcqcdqcqcqcqccqcqqccqcqpdqccqcccqccqcqccqcqqcqcqqcqccqcqccpcqcccqcqcqcqccqcqqcqcqcqcqcqcqcqcqcqcqcqcdqpccpcppccpcpppcpcpcpcqccqccdqdqqqdqdqeqqdqeqdeqqqdqcqcqqccqpcccpqccppcppqqqccqcdqcdqcddcqqcqqcpccqccpcqcqdqdqdqqeeqqqqeqeqqeqdqddqcddqcqqdcqcqccqcqcqcqcccqcccqcqccpqcqccqqqccccqcqqcpqcqcqcqccqdppcqpcqqcqpqcqcqcqcqcqcqcqcqcqcqcqcqcqqcpcqccpccppcpcccqcccqccqqqqdqqdeqeqeqdqdeqdqdqqddcqcqcqcppccpcpcqppccppqcpcqcccqcqqqqqqdqcqqcccqccqpccqcqcqcqcqdqddqqqeqqqeqeqqqdqqqdqqqcqcqcqcqccqcccqcqccqqcqdpccccpqcqccqqcqccpcqccqcqcqqqcqccqqccqcqcqdcqcqcqqcqcqdqcqcqcqcqcqcqcqcpqcqcccpcqccpccpccqcppcpccqqccqqcqdddqddqqqdqeqeqqqqeqdqdqqdqqccqcqcpqppccqpccqcpcccpcqqcqdccqdcqqdccqcqcqcqcccpcpccqcqcqdqdqqdddqeqqeqqdqqqeeqdqcqcqccqccqqcqqccqcqcccqqccqcqpccccqcqcccqccqcqccqqcqcqcqqqcqcqccqcqccqcccpcqcqcqcqcqdqcqcqcqcqcqdqcqpdqcqpccqccpccpcqcccpcccqqcqccqqqqdddqqdqqdedqqdqdqcdqcqccppccpccpcqpccppccpqpccqccqqqdqqcqccqccccqqcpcpqpccqcqcqcqdqqqeqqeqdqeqqqeqqqdqdpdcqpccpcccqqqccqpqccqcqccqppcpccccpcccqccccpcqcqcdqcqcqcqqcqccqccqcqccqqcqcqcqcqdqdqcdqcqcqcqcqcqcqcqcqccqccpccpccpccccppccpcqqpdcqqqqqqqeqdqdqqqeeqdqddqccccpccqpccpccccppqccpccpqcppcqccdqcqcdcqdqcqqccpppcqcqcqqcqcqcqdqdddqqdqqdqeqeqeqeqdqdqcqcqcqqcpcqcccqcqdccpqpccqcpccccpcqpcqccqcqqqccqcqqccccqccqcqqqcqqccqdqcqdqcqcqcqqcqcqdqdqdqcqcqcqccpccqccpccppcpccccqcpcqcqqddqddqdedqdqdqdedqqdqdqqcqcpcccpcqccqccpcpqcppcccqcpqcqccqcqqccqdqqcqqcpccqqqpcqcpqcqdqdqdqqqdqqdqdqqqdqdqdqdqcqcppcccpcpqccqpccqcqqcqcqdcpcccpcqccccppqcqccpcqdqccqcqcqdpqdqcdcdqcdccqqddqdqdqdqdqqddqcqdqcqdcqqccqdcpccqccpcqcqccpcpccccqcpqdcqdqqdqqqdqdqeqqqqdqdqcccccccpcccccpccppppppcpqccpcqcpqcccqqcqccqcqqcqcqccqcqcqcqcqcqqcqdqqqdqqdqddqqdqqdqdqdqcdpqcpqqcpcccqcccccccccpcccpcpcccpcpccpqcccqcdqqcqdcqqcqpcqqqcqcqqcqdpdqqdqdqdqdqcqcqqqdqcqqqcqcqqcqcqcpcqccqqpccqcqqqcqcqpqdqddqedqqeqdqdeqqeqqcqcccccppccpcqcqccpcqcppcpcpccccppcqcqcqcqqqqqcqqqcpcqcqcqcpcqcqqdqdqdqddqqdpqqqdqdqcqccqccpccqcpcpccpcppqcpcpcpcqcccccpcccccpqccqcqqcqdqddqdqcqcqceqcqqdqdqdqdqddqdqdqqdqdqdqqqcqdqdqcdqcqqccqqccqcqcpcqcqccqccqcqcqqdqqqdqqqqdqqqdqqeqcqccpcccccccpcqcqcppcccccpccccccppcppcqqcqcccqdcqcqqccqccqcqqcqcqdqcqcdqdqdqeqqddqqcqqcqcqcqccpccqccppqpcpccqccccccccqpccpcpcccpcpccqqcqccqqdcqqcqccqqdcqcdcqqqqcqdqdqqdqdqedqdqdqcqcdqqdqdqpqcqpcqcqcqpcccqccqcqcqqpcqccqqcqdddqeqqedqqqeqeqdqccqcccccccpcqqcccqcpcpcppcppcpcccqcqccpcqccqcqcqcqcccqcqqcqcqcqcqcqqqdqqdqdqqdqdqqdqdpqcqcqccqcccppppcqcqpcppcpcpcpccpcccccpcqpccqcccqdccqcqdqddqqdcqddqdqcqdqqdcqdqddqdqdqqdqdqdqdqdqdqdqddcqcqcqccqccqcqcqqccpqcqccccqcqqdqdqqqqdqqqqdqeqqdqdqcqccccccccccqcqcqqcpppqcpcpcccppccpccccqcqqcqccqqcqcqcqcqqcqcqccqqdqqdqedqdqdqqcqdpdqcqpcqcpccpcqcqcccccpppccccccccpcccpcpcccpcppccpcqqdqqqqqcqcqdqdqcqqdqdqcqqqdqqdqdqdqdqdqdqdqdqdqqqqcdqccqccpcqccqcqqcqcqpqcqcqccqdqdedqeqqedeqeqdeqeqqccccccccpcpqcqccqpcqcpcccpccpcpcppccqpcpcqcqcqqqqccqqdqcdqcqqcqqcqdqdqqqqeqqdqcqcqdqcqcpdccccpcccccpcpcppqpcpcpcpcpcccccpcccccppcccqdqcqcqcqcddqqcqqqdqqdqdqqqdqqcdcqqcdqqdqdqdqdqdqcddqccqcqqcdqcqcqqcccqcqcqqcqcqqdqqdqqqdqeqqqdqqdqqdqdqcqcpccccccccqcqcqcqcqccccpcccpccpqcqpcccqcccqcqcqpdqcqcqdqqcqccqqdqdqdqdqqdqdqqdqqcqcqcqdcpcpcccpcpcpqpqcpcpccccccccppcpcppcpcpqqcqqqqqdqdqdqcecqcqqcqcqqeqddqcqdcqccqccqdqdqeqdqddqdqqdqqcqcqpqcqqcqqcdcqcqcqcqcdqcdqqdeqdqeddqqdqeqdqdqcccpcccccqccqqcqcqccppccpcqccppcccpcpcpccqqcqqcqcqcqcqqdqqqqdqqcqdqqdqqeqeqqdqqqqqcqcqcqcqqcpcccccccqccpccccpcpcpcppccccpqpqcqcqccqdqcqcqddqddqdqqqcqdqqdqdqeqqqcccccccccqqqdqeqdqqddqqcdcqcqqqcqdqdqdcdqcqcqcqdqdqqdqqqqeqdqqqqqdqdqdqdqdcqcccpccpccppcqqccpcccppccppqcpccccccpccccpcqcqcqdcqqdqpedqddqdqdqqdeqqqdeqqqdqqcdqcqccqccqccccpccpcpqcccpcpccccccccppcpcpppqccccccqcccqqqddqddqddqcqqcqdqdqeqeqqdcqccccccccpcqdqdqdqqdqcqcqqdcqdcqcqqcqqqqcqdqdqdqcqdqqddqqdqqdqqqqdqdqdqcqdccqcpcpcqpdqcqcqccqcqcqccppcqcccpcppcppcqqqcqqcqqqdqqdqqdqqdqqddqqqdeqqqedqqqqcqccqccpccpcqcpcccqpcccccpcpcpcpcpccccpcpppcpcqccqdqpdqcqdqdqqqdqdqdqdqdqrqdqqccccccbcccccdqdqeqeqqqdqdqqqdqdqcqcqdqdqcdqdqcqdqdqdqqqqdqdqdqdqdqqdqdqdqddqdqcdqccqccqdcdqcqcpccpqpccpppppcccqcpcqqcqcqcqdcqqdqddqqdqqdqddqqdqdqqeqeqqqqddqdqqcqqcqccccqcccqcqqccpcpcccccccpcccpcpcccpcpqqccqqcqdcdddqqcqqqqcqddqeqddrqqdcqcccbcccccqcdqdqdqedqdqdqcqdcqcqdqdqcqdqcqqqdqddqcqdqdqqqddqeqdqdqqdqqdqdqdqqqcqcqqcccqcdqcdqqqcdcqcqcqcqcqqcqccppcpcccccqcpqcqcdqddqdqqqddqqdqqqdqeqqeqdqqeqqqqqcqqcccccpcpcccqccccqpcccpcppcpcccpcppcpqqcpccqcqcqqdqqqqqdqqdqqdqdqddqeqqddcqccccbbbcccqdqeqdqdqdqdqddqdqqdqqdqqcdqddcqdqdqdqdqdqqqdqqeqdqddqqdqdqdqqqqcqdqcdqcdqdccqcqqcqcqqccqcqqqcqppcqpcqcqcqdqdqqdqrqedeqqdqqeqqeqqeqqdqrdqqeqqqdqcqcpcqcccccqcccqcqqcpcpccpppbppccpppcqccccpqqqcqcdqcdqpdqddqqdqqdqddqqdccccb[Zccccpdqdqdqeqdqdqdqqdqdqdqdqdqdqdqqdqdqdqdqdqdqqdqqdqeqqdqdqqdqcqdqqddqcqdqqcqqdqdqdqcqcqcqqcqccqqcppcccpcqccqqcqqdqqddqdeqqqqqqqdqqeqdqdqeqeqqeqdqdqdqcqcqpcqcqcccpcccccqpcppccbcbcbccccpcpqppcqcqcqcqdqcqqqdqqdqqeqdqdqqdqddqdqdccqcccbbbcccccdqdqeqdqdqddqqdqdqdqdqdqdqddqdqdqdqdqeqqqedqeqdqqdqeqqdqddqdqdqdqdqdddqdqdqqddqdqqpcqqccqcqcqqcqcpcpppcqcqcqcqdqqdqdqeqdedeqqeqqqedqdqeqeqeqqdqeqdqdqddqdcpqqccqcqcqcqqccqccccppbpppcccppcqppqqpqcdddqddqddqdqdqddqdqqdcqcqccccccc[ccccqcqdqdqeqdqdqqdqqdqdqdqdqdqdqqqdqdqdqdqrqeqqeqeqedqdqdqdqqqqdqdqddqeqqqedqdqdqqcqcqcccqcqqcqqcccccpcqqccqcdcqdqcqdqdqeqqqqqqdqqqqeqqdqqqqdeqdqeqdqcqdcqqcqccqccqccccccqpcppcbbppbccpppppccqcqdqcqdqqqqdqeqdqdqdqeqqdqddcqccccccccccccccccqdqeqdqqdqdqqcqdqdqddqdqdqeqdqdqdqdqeqeqqeqqeqeqdqqeqdqdqqqqdqddqeqedqqeqqqqdqddqdqqdqqccqdqdcqccqpcpccqqcqcqqcqqqdqdqeqedqqqeqeqdqqeqqedeqeqqeqdqdqdqcqcqccccqqcccpcpcppcpppbccpbcccppppcpqccqcqcqqcddqdqdqdqqdqqqeqdqdqcccccccccccccccqdqqdqeqedqdqdqcqdqqdqqqdqdqdqdqdqdqeqdqedqeeqeqdqedqdqqeqddqdqqedqdqqeqeqqrdqeqqqqcdqcdqdcqccqcqcccqccpqcqcqddqdqddqdqdqqqdqqqqdqdqeqqqqqqqdqdqqdqdqqqddcqcqqccqcccccccqpcccbbpbbppbccccpqqpcpccccqcqcqqdqdqdqddqeqqeqqdqccccccccccccccqddqcqdqdqeqqdqqdqdqdqdqqqdqdqeqdqeqdqeqdqeqqeqqeqeqeqeqeeqeqqedqeqdqdeqqdqdqedqeqqqqqdqdqdqcqdcqdcdcqcqqcqqcqcddqcqdqqdqddqddeqqqedqeqdqqqqdqdqeqqddqdqdqcqqcqqpqcpcqcqcppcccppcbpbcpccpcpcpcqqpcqpqdqddqdqeqeqqdqeqqqedqccqccccbccccccqcqqdqdqeqdqqdqdqdqdqqdqdqqdqeqdqeqdqdqdqeqeqeqeeqeqeqdqeqdqdeqdqeqqqeqeqqqqqqeqedqdddqdqdqdqdqcqqcqcqcqcqcccqcqqdqqddqdqqdqqqqqqdqqdqeqqqqdqeqdqqqqdqdqdqcqcqqpqccqqpqpcccpcbpcbpbpcpcpcccccpcpcdpqcqdqqeqdqqdqeqdqqeeqqqdqcccca[bccccqdeqddqeqdqdqqdqdqqdqcqdqdqdqdqdqdqdqdqdqdqeqeqdrqeqeqeeqdeqeeqqqqeqqddeqeqerqqeqeqeqeqqdqdqqcdqqqqqcqccqqcdqqdqqdqddqqerqqeqdqqdqqqqeqdqddqeqdqddqqqpcqpqccqpppcpcpbcpbcpbcpcpccpcpccccqccqcqdqddqeqedqdqdqeqqqeddqccccb[abcccqcqqdqqeqcqdqdqdqdqdqcqdqdqdqdqdqdqeqqqdqqeqqeqdqeqeeqeqeqeeqedqdqeqedqedqeqeqeqeeqdeqeqqqeqqddqdqdqqqcqcqcqccqcqcdqqcqdqddqdqqdqdqqqdqeqdqdqdqqdqqeqdqeqqdqdqqdqcqccqccqqqccqpcqpccpcpbcpbpcpcpcccccccpcqccqqcqdqdqqdqqqqeqdqqdeqeqqqqccccb[bccccqqedqdqqqqcdqdqdqdqdqqdqdqeqdqddqqqqqqeqeqeqeqeeqeqdeqedqqqddqqdqqqeqeqereqeqeqeqeqdqdqddqdqddqcqqccqcqcdqdqdqdqdqqdqdqdeqdqqeqeqdqdqedqdqdqddqdqdqcqqqdcqcqpqccpqcccppcpccbpbpbcbcppcpcpcqqcqqccqdqdqdqeqdedqqqdeqqeqeqdqccccccbcccqdcqdqdqdcpcccqccqqdqdqqdqqdqdqdqqeqqqqqqedqeqeqeqerqqeqdqeqqdqqddqqqdqdqeqqeqeqeqeqqeqeqdqdqdqdqdqddcqcqqqcqqqdqdqdqdqqdqeqqdqqqdqdqeqdqqdqqdqeqqdqdqdqcqcqcqqpqcppcccppcccppccpbccpcpcccccccccqcqccdqdqdqdqdqeqqqeqqqqeqqqeqcqdqcccccccccqdqdqcqccpccqqcqdqdqqdqqdqdqqqqeqqdqqdqqqeqeqereqqeqeqqqeqqedqqdqqqeqeqqereqeqeqdqeqqeqqqddqqdqcpccqqdqqdqdqdqcqqrdqedqqdqdqdqdqdqdeqdqddqqdqqqqqccccccpqcpccccpcccccpcccpbccccpcpcpcpcqccqqcqdqdqdqqeqdqdqdqqqdqqqdqdcccccccqcqqdqcqcccccccccqcqcqdqdqddqdqdqeqddqqqqqqqeeeqeqeqdqereqrdqeqedeqdqddqddqqeqeqqeqeqeqeqeqeqeqdqeqdqeqdqqdqqqcqdcqcqdqdqdqdqdqdqdqdqqqdqdqeqdqdqdqqdqdqdqdqddqcqcqcqccqcpcpqccpcpcpcccpcpcccpcccpcpcccccpqdqqdcdqdqdqdqqqdqeqdqeqqeqqqqdqqqqdqcqcdqqcqccqccccccccccqqdqeqqdqdqdqdqqeqqdqqeqqdqqqeqererqeqeqeeeqqdqqqddqdqdqddqeqerereqereqeqqeqeqqeqdrqqdqcccqpdqdqdqdqedqdqdqdqdqqddqdqdqdqdqdqddqdqdqdqdqqqcqqccqqqpcccpccccpcppcpccpcccccpcpcccqccqdqqdqcqdqeqqedqdqeqdqqdqqqeqddqdqdqdqcqcqcqcccccccbccccccqdqdqedqdqqqdqqdqddqdqdqdqqedqeqdqeqeqeqqqddqqqqqcdcddddqdeeqeqdqeqdqeqeqeeqdeqeqqdqdqqqdcqdqcqdqdqqqdqdqdqeqqqqeqdqdqdqddqdqqdqdqddqqcqqdcpqcpqcpcpccccpcppccpcccppcpcpppcpccqcqdcdqdqdqdqdqqeqqdqqeqqqeqqdqdqqqdqdqdqcqcqcqpccccbb[bccpcqcqeqeqqeqdqqqqdqqqeqdqeqqqeqeqqeqeeeqdedqqdccqqcdcqcqdqedqqrdreqeqeqeqeqqeeqeeqeqeqeqdqddcqdcqqddqdqqqdqqdqrqqdqdqdqdqdqqqdqdqqdqddqcddqcqcqcqcqpcccccpccccccccppcppcccppcpqqccqqqdqdqdqeqdqdqdeqdqdqqdqqqeqqdqdqddqdqdqcpcccccbZbb[ccccqdqqqdqqdqeqeqqeqedqdqqdqdqdeqdqqeedqdqqdqqqcccqqcqqdqqqqrdqeqeqereqeqqeqdqqqeedqdqdqdqdqdqcqdqdqddqdqdqcqdqqeqdqdqdqddqqqdqdqdqddqdqqqccqqppccppccpccppcpcccccccppcccpppqqccqqcdqdqeqdqdqdqqdqeqqqeqqqeqdqqdqdqqdqddqcqpcccccb[bcccqqdedqeeqeqdqqqqdqqdqdqdqqeqqdeqrdqqqeeqqppqcccccccqqpqedqeqeqerdqeqeqeqeqeereqeqeqedqqdqqdqdqdqdqdqcdqdqdqddqdqdqdqqqdqcqcqdcqcqqcqcqdcqcqcqccpqpcpcppcccpppbpccpccpqppccqqcdqdqdqdqdqeqqdqqdqqdqdeqdqqdqddqcqdcqcqcqccpccccbcccccqdqqeqqdqdqqqqqdqdqdqeqqdqqqqeddqqddqqqcccccccqqcdqdqdqdqqeqeqeqeqeqeeqeqdqeqeqqqeqdqdqdqqdqdqcqdqqdqdqeqqdqdqeqdqqddqdqcqdcqdcqcqddcqccqccccccpqqcpcccccpcppbbpbpccppppccqccqqeqdqeqqdqdeqdqeqdqeqqqeqqdqdcqcdccqdccqccpccccccccccqdcqeqqeqqdqeqqeqqqeqeqqdqqdqdqqqqdqqdcqdccccccccpqqcdqqqqdrqeqdreqererdrqereqeeqdrqqeqeqdqdqdqqddqdqqqdqeqdqeqdqdddqdcqcqqcqcqqqcqdqccqcpcqccqcppqpccpcpccbcbbbpcpppcppcccqcqdqdqeqdeqdqqdqeqqeqdqqqddqcqccccqccqqqqcqcccccqcqpqeqdeqdeqdqdqdqqdqdqqdqeqdedqdqdqqdcqccccpcbcccccccdqdqdqdqeqdeqeqdqerdqeqeeqeqqqqeeqeqeqeqeqdqdqcqqqcqdqdqqdqdqdqqqddqddqcqcqqcqcqqqqccqpqccccqcqpccccpccbbbbbbbpcccccpcccccccqddqeqdqqdqeqeqdqdqeqqqeqqdcqccccccccccqqcqqccqcqcccqcqqdqqqdqqdqeqeqqqeqdqeqqdqdqdqdqddddqqcqccccbbbppqcddqdqdqdeqdqeeqeqeqeqeqerdrrrrdqeqereqeqeqeqdqddqqdqdqdqdqqdqdqdqqqdqdqqqcccqqqqcqqccqqcqccqcppccqpcpcccccbbbbppcpcpcbpppcccqqeqdqdqeqdqdqqdqdqqeqeqddqqcccccccccqcccqccqqccpcqqqcqqdqdeqdqeqqdqdedqdqqdqdqdqdqdqqqcqcccqdccccbpbbbcpqcqqqdqqdqqqdreqerereqeqqeqqeqeqeqeqeqeqdqdqqdcdqdqdqdqdqqddqqqcqqqccqppcqdcqdcdqcqccqcccppqccpcqqppbcbbbbbpcccpbbbccpccqdqeqeqdqqdqqqqdqdqeqeqqdccccccccccccqcqcqqccqccqcqqdqdeqeqqeqdqdqdqqqdqqqdqdqdqddqdqqcdcqccccccbbbbcccqqddqcqdqqeqqrdqqdqdqeqeqeqdqeqqeqeqeqeqdqdqdcdqqqdqdqeqdqdqqqcdqpdqccqdpccqccdqccdcqccqcqcqcqcqcccqcpcccccbbbbbppcpcpcbbbbccpcqcqdqdqdqdqqedqqqeqeqqqedqdqcccccccccqcqcqccqqcqqcqddqdqqdqdqdqqdqeqdqdqedqqeqdqddqddqqqcqcqccccbbbbbbccqqqqqdqdqdqedqdqqerqedqdeqqeqeqeqeqeqeqeqdqdqqqddqcqqdqeqdqqqdqddqdcdqcqqqpcccqcqqqcqqccqccqccccqqccqpcpcpcbcbccpccccpcccccccpccqqdqdqdqeqqqqdqqdqdqeeqqdqccccccccccccqcqcqqcqqcqdqqqdqdqqeqeqdqeqqdqeqdqqqdqddqdqcqpqccqcccccbbbbbbccqqqdqddqdqdqeqeeqeqcqdqddqdqeeqqerqeqeqqdeqddddqdqdqqdqqdqcqdcdqcqdcqqqcqcqcqqqccqcqcqccqcdpcqcccqcppccpccbccpcccpcpcpccccccqqdcqdqdqeqdqdqdeqdeqeqqqqqdqdqcqccccccpcpqcqqcqcqcqdqddqdqedqdqeqdqdeqdqeqqqdqqqcqqcqcqcqcqqpccccbbbbbcpcqcqcqqqdqeqdqddqeddddcdcdddddqeqeqdqedddddqdqqdqqdqdqddqdqqqdcqqqccqcccqcqccqcqpccqcdpcqqccqccqcqccqqcqdppcpppccpcccpcccpcpcpcpqccqddqeqdqeqqeqqdqqdqdqqqdqqcccccccccqcqcqcqcqcqdqcqqeqqeqqqdqeqdqqeqdqdqqdqdqqcdqcqdcccccccccccccccbbbbbcpcpqqdqqdeqeqeqeqdcqcqcccccqcqqqeqqecqcqcqcqdqdqqdqdqdqdqqdqdqddcqcqdcqcqqccppqdcqqccqqcqcqcqcqcqcccqcqcqcqpppcccpccqcpqccpccccqqqdqqqdqdqddqdqqdqqdqeqqqeqdqcqcqcpcqcqqcqcqcqdqcqqdqdqdqdqqqeqdqeqqdqeqddqdqcdqccqqcqcqcccpcccccccccbcbcpcppcqdqeqqeqeqqddqcccccccccdqeqqdcqcccccdqcqeqeqdqdqdqdqdeqcdqdqdcqpcccqccpccqqcqccpqcqcqccqqcccqcqqccqcqcqcpcpcppcppccqqcqcqqcqcdqqcdqqdqdqdqqeqqedqeqqqeqdqcqcqcqcqcqcqcqcqcqcqqcqcqdqqdqqeqeqdqqeqqeqqdqdqdqdqcqcqccqqqccccpccccccccccpcpcqqqdqqqeqeqdqdqcccccccccccqcqeqeqddcccccccdddqeqeqeqqdqqqddqqcqqpqcqccqqccpqqccqcqppcqcqcqqqccqqqcqcqcqcqcqcqcqcqqcpcqcqcccqcqcqddqddqdqdqqdqqqdqqdqdeqqdqqdqdqcqcqqcqcqcqdqcqccqcqcqddqdeqeqeqqdqqdqedqdqqcqdcqccqccqccccqccccccpppccpcpcccqcqdqeqeqeqeqdddccccccbcccccdddeqqccccccccqdqqeqeqdqdqdqqdcqqcqdcccqcqcccppccpqcqccqqccqcqccqccqqcqcqqqcqcqcqcpcpcpcqcqqdqcdqdqqdqdqcqqqdqdqeqdeqdeqqdqdqqqeeqqqdqdqcqqcqcqcqcqcqcqqcqdqdqqeqqdqqeqqqdqeqdqeqdqcqcqcqccqccqcccpccccccpccccccccqcqqcqqdqeqeqeqeqedqcqccccbbbccccqeqqqccccccccccqqeqeqeqdqdqdeqddcqqcqccccqcqpdcqpcccqccqcqccqcqccqqcqcqcqcqccqcqcpcqcqcqcqcqcqqcqdqdqqdqeqdqddqdqdqdqdqqdqqdeqeqedeqqdqqqqdqqcqqcqcqcqcqcqccqcqcqcqcqeqedqdeqeqdqeqdqdqdqcdqcqcqcpqcpcqcpcccccpqccqqqcqccpdqcdqeqeqeqqqqccccbZ[bbcccdqdeqdddccccccccqeqeqeqdqdqdqqdqqqcqccqcpcccpccqccppcqpccqpccqcqcccqcqqcqcqdqccqcqpcppcpcqccqdqqqdreqqeqeqqdqdqdqdqeqeqdqqdqdqqqdqqdqqdqqdqqpqcqcqcqcqcqcqcqdqdqdqdqqqdqqdqdqdqcqdqqcqccqcqqcqqqcccpccpdqqqccccpcdqqqdqeqeqeqqccdccccbbZcccqcdqerdqccccccccqcqdeqqeqdqqqqdcqcqccqcqccpcccppccqqccqcqcqdqqqcqcqcccppqcqcqqcccpcccpqqcqcqdqdeqdqreqeqedqdqdqeqqdqdqeqdqdqqddqdeqdqdqdqcqqdcqqcqcqcqcqcqcqcqdqdqdqddqqdqdqdqdqqdpqcqqcccpqqcqpccqqcccqqqccqpcqqccqqqeqeqeqeqdqcqcccccccccccdqeqdqqccccccdcddeqeqeqqdqcqecdpqccqccccqqcqqcdpccqcqcqqccqqcqcqccqqcqcqcqqcpcpcccppccqccqdqdqqeqqdqeqeqeqeqeqdqdqdqdqdqeqqqqeqqeqdqdqdqqcqqqqcqcqcqcqcqcqcqcqqdqdqqqdqdqcqdqcqcqcqcccqqcqcpqqcpqcccqccqcqqccccqcqcqqeqeqeqeqqddcccccccccccdqqqdecddcccqcqdqqdqeqdqdqdqdqqdqcqcqpdqccqccqcqcqpcccqccqcqccqcqqpdccccqqcqcqccccccppcccpdqcqdqqerqeqqeqdqdqdqeqdqqeqdqeqdeqqeqeqdqqdqqqcdqcqcpcqcqcqcqcqcqcqcqdcqcqddqqcqdqdqcqdcqcqqqcccqqpcqqpqccpcccqqqccqcpcqcqcqcqdqeqqeqdqcqcqcccccccqddqeqeqqdqceqccddqqeqdqdqddqqdqpqcqcqqccqcccccpccqqccpcqccqcqccqcqcqcqcqcqccqqcpcppbcpcccqcqdqdqqqqqeqeqeqeqdqedqqdqqdqqqeqdqdqqqqddqqqcqcqdqcqcqcqcqcqcqdqcqqcqdpqcqdqcqcqdcqdqcqcccpqccqcpcqcqccqqcqqccqcqccqpqcqcqdqeqeqeqdddqccdccccdcdqdqereedqdqcdqeqdqdqddqdqqdqcqqqcqdpccqqcqcqccqcqcccqcccpqccqcqcdqccccqccqqqccqcccbbbbbcpcpqdqdqddqdrqeqeqeqeqeqdqqddqqdqddqeqeqeeqqdqqddcqcqcqcqcqcqcqcqcqcqcqdcqcqecqcqcqdqcqqcqccqcqqdccqcqqpqqqccqcccpccqppccqdqqcdqdqdqdqdqdqqcqcqcqcqcqqcdqqdqeqeeeqedqqdqqqqdqcqqddqcqdcqqcqccccpqccqqqcpccqcqcqddqddqdqccpccqcqcqcccpccbbbbccqqcqdqdqqqeqdrqdreqeqdqeqdqqdqqqdqqdqdqqdqqddqqqqcqcqcqcqcqcqcqcqcqcqcqqdqcqqcqcqcqdcqqccqqcccqqcccdpcqqccqcccqccqpqccpqcqqcqdqdqqdqddqqcqqdqdqddeqdeqeqeqeqqeqqeqdqdqqqqddqcqcdqqcccpqcqcccpcqccqccqcqcqcqqcqcqqqdqcqccqcdcpqqqccccbbbbbccpqcqcqdqddqqeqeeqeqeqeqeqdqeqqdedqeqqeqedqddqqcpccqcqcqcqcqcdqcqcqcqcqcqccqcqccqcqcqcqcqcqcqcqcqcqccqqcppccqccqqqcccqcqcqcqcqcqcccqcqdqdqdqqdcqcdqcqqcdqdqdqqqqeqeeqeeqeqeqddqcdqcdqqqqcpdccqcqqccccqccqccpdqcccccccqcqcqqqccqcqdqcqcqpcpccbbbcccccccqcqcqqqeqqreqeqeqeqdqdqqqqqdqqdqqqeqqqdqqcqccqcqcqpcqccqcqcqcqcqcqcqqcqcqcqccqcqqcqcqcqcqcccqcqcqccqcqcccpcqqqqqcqpqcdqccqdqdqcqdqqddqcqdqdqdqdeqeqreqeqreqqeqeqdqcqdqqdqcdcqqcqcqcccccqcqccqqcqcccqqcqqqqcqqdqcqqdqcqcccccccqccpcccbpccpcqqqdqddqdqqqeqeqeqeqqeqdqqddeqdqqeqqdqcqcqccqqqcqcqcpdqcqqcqqdqcqcqcqccqcqcqqpcccqqccqpcccqcqcqqccqcccqcqdcqcqcqcqcqccqdcdpqqqcqqdcqcqcqdqqdqdqeqddqedqerqeqrerqqdqdqdqcqcqddqqepqccqqcpcqqccpccqcccpcqqccqcqdddqdqqqdcqcqqcqcccqcccppccpcccccqdqdqqeqqqeqeqeqdqeqdqqedqqqdqqdqqdqdqcqcqcqpqqcdqcqcqqcqcqqqcqcdpqcqcqqccqpcccpccqcqqcqqccqcpcqcpcqccqqcqqcqqcqcqcqcqccqqcqdpqqqcqdqqedqeqedqqeqrqeqdqqdqdqqdqddqcqdqcqcqcdqcqccqpcccqcdqqdqqqcqqqddqpcqcqcqcdcqqcqcpccpqcccdqcqqdqdqddqeqrdqeqeqeqeqdqedqqdddqdqdqddqcqcqcqccccqcpcqqcqqcqcqcqcqcqcqqqdqcqqcccpcqcppqqccqcqcqqqqqcccqqcqccqcqccqcqqcqpqqcqccqcdqcpcqcdqdqdqdqdqdqqqeqqrdqrqeqqdqdqcqcdqqcqqqqcccqpccccpccppcqqcqdqccqcqdcdqdqdqdqcdqqqccqqpdccpccccpcqcdqqqcdqqdqdqeqqeqqeqqdqeqqqqqeqdqdqdqcqpppqpccqcqqcqcqcdqqqcqqcqqcqcqqcqcqcpccqcpqqqccqcqqcqcqqcqqcccqcqccqpcqccqccqccpcqqccqccqqqcdqqdqdqqqqdqeeqeqqqqddqdqqcddqqqcccpccqdcqcqccqqcccqcqqcdqpqqqqdqdqdqqqcqcddqdqcpqcqqcqcqqccqdpqqddqdqdqqdqeqqeqqdqqdedqdqdqcqcqcqcqcqccccpccqcqccqcqcqcqcqddpqdqcqqccccpcqccpcccqccqcqcqccqcppcccccqcqcccqqcqdqccqccqccqdqcqdqcqccqccqcqdqcqdqqdqdqdeqdqqdqeqqeqdqqdqcqdqcqqcdqcqdcqccqqccqcqccqpqqccqddcqdqdddqdqdqdqddqdqpqqecqdqcqdqcqqcqdqdcqdqddqdqdqdqqeqdqqqdqedqdqqqdqdqqcqqcqpccpcpccpqccqcdcqqqdcqdqcqqccqcqqqccccppcpccqcqcpqcqdcqcqcqqqccqcqcqqcqccpccpccqcccqqccccqccpqqcddqqdqdqdqdqeqdqdqqedqeqqddqdqdqcqqcqqccqcqcqqcccqcccqcqdqdcqdqdqdqdqdqdqdqdqqqdeqcqcqdqcdqdqdqdcqqcqddqdqqdqdqeqdqqdqdeqdqqqdqdddqdqdqcqqcqpdcpqcqcqcqcqcqqddpdqdqddqqpdqqpccqpcpcqcccpccqqdqcqcqccqqcccqqqcqcqcqqcqcqqccqcqqccpcqqcdqcqcdqqqcqqdqdqdqdqdqddqqdqdqdqqqqqcqdccqcqccccqcqqcppcccqppdqdqddqdqdqdqqdqqqdqdqddqqdqqeqeqdqdqcqqqddqqdqdqdqddqdqqdqqqdqdqqdqddqcdqcpccpcpccpppcqqcqqqddqqqdqcqdqdccqcpqcccqppqccpcqqccqccqcqcqqcqcqqqcqcqcqcqcqqcppccccppccqcppccqqcccqcqdqdqdqdqdqdqdqqqdqdqcdqcqcqcdqqcqccccpcpcqcqccqqqccpqdqqqqqdqdqdqqdqqqdqdqdqdqdqeeqdqeqeqdqdqddcqcqdqdqdqeqdqdqdqddqdqdqddqqcqcqcqccpqpccqcpcccqcqdqcqdcqcqdqqqddqqqcccqccqcqcpcqccccqccqccqcqqcqcqcccqccqqcqcqcccqqcpccpqccccqcqccqcqdqcqqcqqddqdqdqdqdqdqdqqqqcddqdcqdqccpcqcdccqqcccqcpcccqdcqdqcqdqqdqddqdqddqdqdqdqqdqdqdqqdrqeqdqeqdqdqqdqdqqdqdqdqdqdqdqqqdqdqdqcqcqccqcccppcpccppqcpcqqcqcqcqqdcqdqdqcqddcqdqcqcppccpcqccqcqqcqqcqcccqcqccqcqqccqcqqccccqcqccpcccqccppcpccccqqqcddcqqcqcqddqdqdqdqdqdqcqdcqdqqdcqddccqpccqcqcqcpqpcqcqcqcdqdqdqdqdqqqdqqdqdqeqdqdqdqeqdqqdqdqqeqdqdqddqqcqdqdqdqdqdqdqdcdqcqdqdqcqqccqcpcpppccpqcppcqcqcqqdqcqddqdqqdqcqccqccqcqcqcqccqcqcccqcqcqqcqccqccqccqqcqcqqcppcqcccpcccppqcpcpqcqcqcqqcqcqdqdqqqdqdqdqdqqddqqcqddqcqccpqccqcpccqcqcppccqccqddqqdqdqqqdqqdqeqdqdqqdqdqdqqeqqqdqdqddqdqqdqdqqdqdqdqdqdqqqcqdqcqcqcpcqccppcqqpccpppqcqqcqqqqddqdqdqdqdqdcqccqccqccpccpcqqcqqccqqccqcqqccqcccqcqcccqcqcccpcppcccpppccccpcccccqqqddqqqqdqqdqqcqdqcqcqqqcqqccqpccqqqcccccccqcqcdqdqqdqdqdqdqcdqdqeqdqqdqqqdqdqeqqdqdeqeqdqdqqdqdddqdqcqdqdqdqdqcqdcqcqcqcqqdcpcqcpcccpcppcccqcqcqccpqcqcqcqdqqdqcqdqqdqdqdqccqccqdcpqcccccqcqcqcqcqcccqcqcqcqcqcqcppcpcccqpcpqcpccpcppcqqccqcqcqdcqcqqqcqdcqdqcqqdqcqcdcqdcqpcdpqcpqcqqcqqccqcqqcqqdqdqddqdqqdqdqeqdeqdqqdqeqdqeqdqqdqqeqdqqqdqqqdqqdqddqdqdqcqcqcqccqcqcqqcccccpcccqpcpppqcqcqdcqqddqqqddqcqdcqqccqccpqcppcqcqqqcqcqqcqccqpccqcqccqcqcppcqcccppcqpccccpppcccqcqqqcqqdqdqcqddqdcqqcqcdcpqcqcdqcqccqcqcccqccccqccqcdqcdqqcqdqqqdqddqdqdqdqqdqedqeqdqdqdqeqqddqdqeqddqdqqdqdqdqdqqqcqcqdqcqcqccqcqcqcpcppcccpccpqcqcpcqcqcqqcqdqdqdqcqdqqqdqdcqcqdqcqcqcqcqqcccccqcqcccqccdqqqcqccqcccpcccpcppcccppcpcpqqcpqcccpcqcqdqdqqqqqcqddqcqqdqdqqqccccqccccqcqpqcqpcqqccqcqqcqdqdqddqdqdqdqdqqdqeqqqdqdqeqdqqddqqqeqqqdqqdqqdqdqddqqqcqdqcqcqqcqccqqcccpcpcppqccccccqcqqcqcqqqcqdqdqqdqqdqcdqccqcpccqcqcqcqcqqccqcqqccqqccqqcdqqccpqccpcppcqpcccqccpccpppcqcqqqqcdqcqcqccdqqcqqcqcdccqqqqcqccqcqcccqccccpqcqqdqcdqdqqdqqdqdqdqeqqeqdqedqqdqqeqdeqqdedqqqeqdqdqcqdqqqdqcdqdqcqcqcpcqcqcqcpcqpqpcccccpccpcpcqcccpccqdcqcqdqqdqdqdqcqcqdcqdcqcqcqqcqqcqcqccqqqccqqqcqcccqcccqcccpppcccqpcppcpccpqcqcqccqqcqcqcdqqdqqqdcqdqcqqddqqdcqcqdqccpqccqqqcqqdpccqqccqdqqdqdqdddqdqdqdqqdqdqqdqqqqdqdqqqqqqqdqdqdqdqdqqdqqddqdqcqdqcqcqdqcqcqcqqcccppcpcpcpqpccqqddqdcqddqddqdqdqdqdqqddqcdpqqcccqcqccqqcqqqcqccqcqccqqccqqccqqccpcppppccccpccppccccccqqcqqcdqqcqdcqdddqcqqcqdcqcdcqddcd